Cách đếm số lượng tệp files trong thư mục và thư mục con với VBA

Nội dung được viết bởi G-LEARNING

Đếm số lượng tệp files trong thư mục và thư mục con với VBA

Bước 1:

Copy code VBA sau đây vào 1 Module mới trong VBA:

 Function fCount(strPath)
 Dim fCnt As Integer
 fCnt = ShowFolderList(strPath)
 fCount = fCnt
 End Function
  
 Sub CntFiles()
 Dim strPath As String
 strPath = "A:\Asif\Answers\abc"
 ShowFolderList (strPath)
 End Sub
  
 Function ShowFolderList(Path)
 Dim fso, folder, subFlds, fld
 Dim tFiles As Integer
  
 tFiles = ShowFilesList(Path)
  
 Set fso = CreateObject("Scripting.FileSystemObject")
 Set folder = fso.GetFolder(Path)
 Set subFlds = folder.SubFolders
  
 For Each fld In subFlds
 If fld.Name = "Entered" Then
 GoTo SkipFld:
 Else
 Path = fld.Path
 tFiles = tFiles + ShowFilesList(Path)
 End If
 SkipFld:
 Next
  
 'MsgBox tFiles & " files"
 ShowFolderList = tFiles
 End Function
  
 Function ShowFilesList(folderspec)
 Dim fso, f, f1, fc, s
 Dim Cnt As Integer
  
 Set fso = CreateObject("Scripting.FileSystemObject")
  
 Set f = fso.GetFolder(folderspec)
 Set fc = f.Files
  
 ShowFilesList = fc.Count
 End Function

view raw getFilesCount.bas hosted with ❤ by GitHub

View the code on Gist.

Cách sử dụng:

trong 1 ô trên Excel: sử dụng công thức

A1 = fCount(“<đường dẫn đến thư mục cần đếm files”)

Xem ngay: Tài hiệu hướng dẫn sử dụng excel 2007 toàn tập

Đếm số lượng tệp files của 1 kiểu file bất kì trong thư mục

Bước 1: Copy code này vào trong 1 Module

 Function CountFilesInFolder(strDir As String, Optional strType As String)
 Dim file As Variant, i As Integer
 If Left(strDir, 1) <> "\" Then strDir = strDir & "\"
 file = Dir(strDir & strType)
 While (file <> "")
 i = i + 1
 file = Dir
 Wend
 CountFilesInFolder = i
 End Function

view raw CountFilesInFolder.bas hosted with ❤ by GitHub

View the code on Gist.

Bước 2: Cách sử dụng trên Excel: xem hình vẽ. Lưu ý, Function chỉ đếm, thống kê số lượng file trong 1 thư mục, không đếm trong cả các thư mục con

 

đếm số lượng file trong một thư mục

đếm số lượng file trong một thư mục

 

Nếu công việc của bạn liên quan nhiều đến quản lý, phân tích dữ liệu và làm báo cáo trên bảng tính thì giỏi Excel thôi chưa đủ. Nếu chỉ dùng Excel, bạn sẽ thường xuyên phải OT đến mỗi kỳ làm báo cáo, stress vì sai dữ liệu do nhập thủ công, hay gặp vấn đề các hàm load chậm do dữ liệu quá nặng,...

Có lẽ bạn đã từng nghe ở đâu đó về công cụ lập trình VBA trên Excel, giúp bạn tiết kiệm tối đa thời gian làm việc nhờ làm báo cáo tự động, phân tích và xử lý số liệu chính xác tuyệt đối, đặc biệt công cần lọ mọ sửa thủ công,...

Nhưng bạn không dám nghĩ một ngày nào đó mình sẽ dùng VBA bởi vì mình không biết lập trình, sửa code và gỡ lỗi mã. Tin mình đi, bạn hoàn toàn có thể thành thạo công cụ này ngay cả khi không giỏi Excel, không biết lập trình với khóa học VBAG01: Tuyệt đỉnh VBA - Tự động hóa Excel với lập trình VBA tại Gitiho.

Tất tần tật những kiến thức từ cơ bản đến nâng cao về cách sử dụng VBA trong Excel sẽ được đề cập khiến mọi thao tác thủ công trên Excel gần như được loại bỏ hoàn toàn. 

Hãy nhấn vào Học thử hoặc Đăng ký ngay để cảm nhận sự “vi diệu” mà VBA mang lại cho công việc của bạn nhé!

0/5 - (0 bình chọn)

0/5 - (0 bình chọn)

0 thảo luận

@ 2020 - Bản quyền của Công ty cổ phần công nghệ giáo dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở kế hoạch và đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ thông tin và truyền thông