Bỏ qua nội dung chính
 

Làm cách nào để liệt kê tất cả các tệp trong thư mục và thư mục con vào một trang tính?

Tác giả: Tiểu Dương Sửa đổi lần cuối: 2024-08-28

Bạn đã bao giờ cố gắng liệt kê tất cả các tên tệp từ một thư mục vào một trang tính bao gồm các tệp nằm trong các thư mục con của nó chưa? Trên thực tế, không có cách nào trực tiếp để chúng ta liệt kê tên tệp từ một thư mục và thư mục con của nó trong Excel, tuy nhiên, hôm nay, tôi sẽ giới thiệu một số thủ thuật nhanh chóng để giải quyết công việc này.

Liệt kê tất cả các tên tệp trong thư mục và thư mục con với mã VBA

Liệt kê tất cả các tên tệp trong thư mục và thư mục con một cách nhanh chóng và dễ dàng với Kutools cho Excel


Liệt kê tất cả các tên tệp trong thư mục và thư mục con với mã VBA

Thông thường, Excel không có tính năng tích hợp nào để giải quyết tác vụ này, nhưng bạn có thể áp dụng mã VBA sau để hoàn thành vấn đề này.

1. Kích hoạt một trang tính mới sẽ liệt kê các tên tệp.

2. Giữ ALT + F11 các phím trong Excel và nó sẽ mở Microsoft Visual Basic cho các ứng dụng cửa sổ.

3. Nhấp chuột Chèn > Mô-đunvà dán mã sau vào Cửa sổ mô-đun.

Mã VBA: Liệt kê tất cả các tên tệp trong thư mục và thư mục con

Sub MainList()
'Updateby Extendoffice
Set folder = Application.FileDialog(msoFileDialogFolderPicker)
If folder.Show <> -1 Then Exit Sub
xDir = folder.SelectedItems(1)
Call ListFilesInFolder(xDir, True)
End Sub
Sub ListFilesInFolder(ByVal xFolderName As String, ByVal xIsSubfolders As Boolean)
Dim xFileSystemObject As Object
Dim xFolder As Object
Dim xSubFolder As Object
Dim xFile As Object
Dim rowIndex As Long
Set xFileSystemObject = CreateObject("Scripting.FileSystemObject")
Set xFolder = xFileSystemObject.GetFolder(xFolderName)
rowIndex = Application.ActiveSheet.Range("A65536").End(xlUp).Row + 1
For Each xFile In xFolder.Files
  Application.ActiveSheet.Cells(rowIndex, 1).Formula = xFile.Name
  rowIndex = rowIndex + 1
Next xFile
If xIsSubfolders Then
  For Each xSubFolder In xFolder.SubFolders
    ListFilesInFolder xSubFolder.Path, True
  Next xSubFolder
End If
Set xFile = Nothing
Set xFolder = Nothing
Set xFileSystemObject = Nothing
End Sub
Function GetFileOwner(ByVal xPath As String, ByVal xName As String)
Dim xFolder As Object
Dim xFolderItem As Object
Dim xShell As Object
xName = StrConv(xName, vbUnicode)
xPath = StrConv(xPath, vbUnicode)
Set xShell = CreateObject("Shell.Application")
Set xFolder = xShell.Namespace(StrConv(xPath, vbFromUnicode))
If Not xFolder Is Nothing Then
  Set xFolderItem = xFolder.ParseName(StrConv(xName, vbFromUnicode))
End If
If Not xFolderItem Is Nothing Then
  GetFileOwner = xFolder.GetDetailsOf(xFolderItem, 8)
Else
  GetFileOwner = ""
End If
Set xShell = Nothing
Set xFolder = Nothing
Set xFolderItem = Nothing
End Function

4. Sau khi dán mã vào Mô-đun, nhấn F5 phím để chạy mã này và Macros hộp thoại bật lên, chọn Danh sách chính tên macro, sau đó bấm chạy nút, xem ảnh chụp màn hình:

ảnh chụp màn hình chạy mã VBA

5. Và trong Xem cửa sổ, vui lòng chọn thư mục mà bạn muốn liệt kê tất cả các tên tệp bao gồm các thư mục con, xem ảnh chụp màn hình:

ảnh chụp màn hình chọn thư mục bạn muốn liệt kê tất cả tên tệp bao gồm các thư mục con

6. Sau khi chỉ định thư mục, hãy nhấp vào OK và tất cả các tên tệp trong thư mục và các thư mục con của nó đã được liệt kê trong trang tính hiện tại từ ô A2, hãy xem ảnh chụp màn hình:

ảnh chụp màn hình của thư mục đã chọn
ảnh chụp màn hình của một mũi tên
ảnh chụp màn hình liệt kê tất cả tên tệp từ thư mục đã chọn và các thư mục con của nó

Liệt kê tất cả các tên tệp trong thư mục và thư mục con một cách nhanh chóng và dễ dàng với Kutools cho Excel

Với đoạn mã trên, bạn chỉ có thể liệt kê tên tệp, đôi khi, bạn cần liệt kê các thuộc tính khác, chẳng hạn như kích thước tệp, loại tệp, thời gian được tạo, thư mục chứa, v.v. Kutools cho Excel chứa một chức năng hữu ích - Danh sách tên tệp, với tính năng này, bạn có thể nhanh chóng liệt kê tất cả hoặc các loại tên tệp cụ thể trong một thư mục và các thư mục con của nó.

Sau tải xuống và cài đặt Kutools cho Excel, vui lòng thực hiện theo các bước sau:

1. Nhấp chuột Doanh nghiệp > Nhập khẩu xuất khẩu > Danh sách tên tệp, xem ảnh chụp màn hình:

ảnh chụp màn hình bật tính năng Danh sách tên tệp của Kutools

2. Trong Danh sách tên tệp hộp thoại, hãy thực hiện các thao tác sau:

A: Nhấp chuột ảnh chụp màn hình của biểu tượng thư mụcnút để chọn thư mục mà bạn muốn liệt kê tên tệp;

B: Chỉ định loại tệp mà bạn muốn liệt kê từ Loại tệp phần;

C: Chọn một đơn vị kích thước tệp bạn muốn hiển thị từ Đơn vị kích thước tệp phần.

Chú thích: Để liệt kê các tên tệp từ thư mục con, vui lòng kiểm tra Bao gồm các tệp trong thư mục con, bạn cũng có thể kiểm tra Bao gồm các tệp và thư mục ẩn như bạn cần. Nếu bạn kiểm tra Tạo siêu liên kết tùy chọn, nó sẽ tạo siêu liên kết cho từng tên tệp và thư mục.

ảnh chụp màn hình cấu hình hộp thoại Danh sách tên tệp

3. Sau đó nhấn vào OK , tất cả các tệp có trong thư mục đã chọn và các thư mục con của nó đã được hiển thị với các thuộc tính sau trong một trang tính mới. Xem ảnh chụp màn hình:

ảnh chụp màn hình liệt kê chi tiết các tệp của thư mục đã chọn

Bấm để biết thêm chi tiết về tiện ích Danh sách tên tệp này.

Tải xuống và dùng thử miễn phí Kutools cho Excel ngay!


Công cụ năng suất văn phòng tốt nhất

🤖 Trợ lý AI của Kutools: Cách mạng hóa việc phân tích dữ liệu dựa trên: Thực thi thông minh   |  Tạo mã  |  Tạo công thức tùy chỉnh  |  Phân tích dữ liệu và tạo biểu đồ  |  Gọi các hàm Kutools...
Các tính năng phổ biến: Tìm, đánh dấu hoặc xác định các bản sao   |  Xóa hàng trống   |  Kết hợp các cột hoặc ô mà không làm mất dữ liệu   |   Vòng không có công thức ...
Siêu tra cứu: Nhiều tiêu chí VLookup    VLookup Nhiều Giá Trị  |   VLookup trên nhiều trang tính   |   Tra cứu mờ ....
Danh sách thả xuống nâng cao: Tạo nhanh danh sách thả xuống   |  Danh sách thả xuống phụ thuộc   |  Danh sách thả xuống nhiều lựa chọn ....
Trình quản lý cột: Thêm một số cột cụ thể  |  Di chuyển cột  |  Chuyển đổi trạng thái hiển thị của các cột ẩn  |  So sánh dãy và cột ...
Các tính năng nổi bật: Tiêu điểm lưới   |  Chế độ xem thiết kế   |   Thanh công thức lớn    Trình quản lý sổ làm việc & trang tính   |  Thư viện tài nguyên (Văn bản tự động)   |  Bảng chọn ngày   |  Kết hợp các bảng tính   |  Mã hóa/Giải mã ô    Gửi email theo danh sách   |  Siêu lọc   |   Bộ lọc đặc biệt (lọc in đậm/nghiêng/gạch ngang...) ...
15 bộ công cụ hàng đầu12 bản văn CÔNG CỤ (thêm văn bản, Xóa ký tự,...)   |   50 + Biểu đồ Các loại (Biểu đồ Gantt,...)   |   40+ Thực tế Công thức (Tính tuổi dựa trên ngày sinh,...)   |   19 chèn CÔNG CỤ (Chèn mã QR, Chèn ảnh từ đường dẫn,...)   |   12 Chuyển đổi CÔNG CỤ (Số thành từ, Chuyển đổi tiền tệ,...)   |   7 Hợp nhất & Tách CÔNG CỤ (Các hàng kết hợp nâng cao, Chia ô,...)   |   ... và nhiều hơn nữa

Nâng cao kỹ năng Excel của bạn với Kutools for Excel và trải nghiệm hiệu quả hơn bao giờ hết. Kutools for Excel cung cấp hơn 300 tính năng nâng cao để tăng năng suất và tiết kiệm thời gian.  Bấm vào đây để có được tính năng bạn cần nhất...


Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều

  • Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
  • Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
  • Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!