Làm cách nào để lấy tên của tất cả các thư mục con và tệp có trong một thư mục bằng PHP?

Trong hướng dẫn đó, tôi đã chỉ ra nhiều cách khác nhau để lấy danh sách tên tệp từ một thư mục (sử dụng hàm FILE và VBA)

Tuy nhiên, hạn chế của phương pháp đó là nó chỉ có thể lấy tên tệp từ một thư mục chứ không phải từ các thư mục con trong thư mục chính

Tuy nhiên, bạn có thể thực hiện việc này bằng Power Query ('Nhận & Chuyển đổi' nếu bạn đang sử dụng Excel 2016 hoặc các phiên bản mới hơn)

Tìm Power Query ở đâu

Nếu đang dùng Excel 2016 thì không cần làm gì thêm. Bạn sẽ tìm thấy tất cả các tùy chọn Power Query trong danh mục Nhận & Chuyển đổi trong tab Dữ liệu

Lưu ý rằng Power Query và Get & Transform đề cập đến cùng một thứ

Đối với Excel 2010/2013, bạn cần cài đặt bổ trợ Power Query để sử dụng nó (các bước được mô tả bên dưới)

  1. Bấm vào đây để tải xuống phần bổ trợ Power Query. Đảm bảo bạn đang tải xuống 32 bit nếu Excel của bạn là 32 bit và 64 bit nếu Excel của bạn là 64 bit
  2. Cài đặt phần bổ trợ Power Query
  3. Mở Excel. Nếu bạn thấy tab Power Query, hãy bỏ qua các bước còn lại. Nếu không, hãy chuyển sang bước tiếp theo
  4. Chuyển đến Tệp và nhấp vào Tùy chọn
  5. Trong hộp thoại 'Tùy chọn Excel', nhấp vào Bổ trợ trong khung bên trái
  6. Từ trình đơn thả xuống Quản lý, chọn Phần bổ trợ COM và nhấp vào Bắt đầu
  7. Trong danh sách các phần bổ trợ có sẵn, hãy chọn Power Query, rồi bấm OK
  8. Đóng Ứng dụng Excel và khởi động lại Excel

Các bước trên sẽ cài đặt và kích hoạt Power Query cho Excel của bạn

Nhận danh sách tên tệp từ thư mục và thư mục con

Vì tôi đang sử dụng Excel 2016 nên tất cả ảnh chụp nhanh và các bước được viết đều dành cho Excel 2016. Bạn cũng có thể sử dụng tương tự cho Excel 2010 và 2013

Bây giờ, hãy xem cách lấy danh sách tất cả tên tệp từ một thư mục và các thư mục con trong đó

Dưới đây là các bước để có danh sách tất cả các tên tệp từ một thư mục

  1. Chuyển đến tab Dữ liệu
  2. Trong nhóm Get & Transform, bấm vào New Query
  3. Di con trỏ vào tùy chọn 'Từ tệp' và nhấp vào 'Từ thư mục'
  4. Trong hộp thoại Thư mục, nhập đường dẫn thư mục hoặc sử dụng nút duyệt để định vị thư mục đó
  5. Nhấp vào OK
  6. Trong hộp thoại mở ra, bạn sẽ thấy tên của tất cả các tệp cùng với siêu dữ liệu khác
  7. Nhấp vào nút Tải

Các bước trên sẽ tải tất cả dữ liệu về các tệp trong trang tính Excel của bạn

Khi đã có dữ liệu trong Excel, bạn có thể chỉnh sửa nếu cần

Với dữ liệu tôi có trong Excel, tôi có thể làm như sau

  • Lọc tên tệp0 dựa trên phần mở rộng (loại tệp) – nó nằm trong cột B
  • Lọc tên tệp dựa trên tên thư mục – nó nằm trong cột F

Chỉnh sửa dữ liệu cột trong Power Query

Trước khi tải dữ liệu của bạn vào Excel, bạn cũng có thể chỉnh sửa dữ liệu trong Power Query

Ví dụ: bạn có thể xóa một số cột hoặc nhận thêm một số siêu dữ liệu cho mỗi tệp

Dưới đây là các bước để nhận các cột siêu dữ liệu bổ sung trong trình chỉnh sửa Power Query

  1. Chuyển đến tab Dữ liệu
  2. Trong nhóm Get & Transform, bấm vào New Query
  3. Di con trỏ vào tùy chọn 'Từ tệp' và nhấp vào 'Từ thư mục'
  4. Trong hộp thoại Thư mục, nhập đường dẫn thư mục hoặc sử dụng nút duyệt để định vị thư mục đó
  5. Nhấp vào OK
  6. Trong hộp thoại mở ra, nhấp vào 'Chỉnh sửa'
  7. Trong trình chỉnh sửa Power Query, nhấp vào biểu tượng mở rộng trong cột 'Thuộc tính'. Nó sẽ hiển thị cho bạn một danh sách các cột bổ sung mà bạn có thể nhận được cho các tệp (chẳng hạn như kích thước tệp hoặc chỉ đọc hoặc ẩn). Chọn các cột mà bạn muốn có trong dữ liệu (và bỏ chọn phần còn lại)
  8. Nhấp vào OK
  9. Nhấp vào 'Tải'

Thao tác này sẽ tải dữ liệu trong Excel với các cột bổ sung đã chọn

Bạn cũng có thể xóa các cột nếu không cần thiết. Để thực hiện việc này, trong trình chỉnh sửa Power Query, hãy chọn cột bạn muốn xóa, bấm chuột phải và bấm vào Xóa

Bạn cũng có thể thích các Hướng dẫn Excel sau

  • Nhận danh sách tất cả các nhận xét trong một trang tính trong Excel
  • Cách kết hợp nhiều tệp Excel vào một sổ làm việc Excel
  • Cách kết hợp dữ liệu từ nhiều sổ làm việc vào một bảng Excel (sử dụng Power Query)
  • Kết hợp dữ liệu từ nhiều trang tính thành một trang tính duy nhất trong Excel
  • Hợp nhất các bảng trong Excel bằng Power Query

SÁCH EXCEL MIỄN PHÍ

Nhận Ebook 51 mẹo Excel để tăng năng suất và hoàn thành công việc nhanh hơn

Tên

E-mail

CÓ - GỬI SÁCH ĐIỆN TỬ CHO TÔI

11 suy nghĩ về "Lấy danh sách tên tệp từ thư mục và thư mục con (sử dụng Power Query)"

  1. Elton Senne

    Cũng có thể lấy tên tệp từ các thư mục con bằng FSO, bạn chỉ cần biết cách triển khai kế thừa

    Elton Senne

  2. Yazor

    Tuyệt vời, tiết kiệm rất nhiều thời gian. Cảm ơn bạn đã chia sẻ thông tin

  3. Maher

    nếu tôi có các tệp trong thư mục và thư mục con hơn 100.000 tệp thì nó sẽ hoạt động như thế nào

  4. SUBHASHINI

    CẢM ƠN THẦY CÔ, QUÝ VỊ ĐÃ LÀM CÔNG VIỆC TUYỆT VỜI CẢM ƠN RẤT NHIỀU

  5. mp

    hướng dẫn tuyệt vời. Nếu tôi có siêu dữ liệu khác như “thẻ”, “tác giả” trên tệp, làm cách nào để hiển thị thêm các cột đó?

    Làm cách nào để lấy danh sách các tệp trong một thư mục bằng PHP?

    Hàm scandir() trả về một mảng các tệp và thư mục của thư mục đã chỉ định.

    Làm cách nào để lấy tên của một thư mục trong PHP?

    basename(getcwd()); // chỉ trả về tên thư mục đang hoạt động hiện tại.

    __ thư mục __ PHP là gì?

    Có thể sử dụng __DIR__ để lấy thư mục làm việc của mã hiện tại . Nó đã được giới thiệu trong PHP bắt đầu từ phiên bản 5. 3. Nó tương tự như sử dụng dirname(__FILE__). Thông thường, nó được sử dụng để bao gồm các tệp khác có trong một tệp được bao gồm.

    Làm cách nào để hiển thị cây thư mục trong PHP?

    Tập lệnh cấu trúc thư mục cây với PHP .
    mảng();
    scandir();
    is_dir();
    thông tin đường dẫn();
    in_array();

Chủ đề