Lấy Danh Sách Tên Files Trong Thư Mục (Folder) Mà Không Cần VBA

Trong bài ngày hôm nay mình sẽ hướng dẫn các bạn cách để lấy toàn bộ tên file trong 1 folder bằng Excel. Công việc này rất đơn giản và hiệu quả giúp các bạn có thể tổng hợp dữ liệu từ 1 file bất kỳ qua Excel mà không cần dùng VBA.

Ví dụ ở đây mình có một folder là Bài tập với các files khác nhau. Bạn sử dụng trên chính folder trên máy tính của bạn nên bài này không có file thực hành.

ví dụ

Lấy danh sách tên file phiên bản Excel 365

Bây giờ chúng ta sẽ bắt đầu vào bài. Đầu tiên các bạn sẽ lấy địa chỉ folder bằng cách các bạn nhấn trái chuột vào thanh tên folder rồi Copy địa chỉ rồi các bạn sẽ sang Excel để Paste.

lấy địa chỉ

Hoặc các bạn có thể nhấn phải chuột vào folder trên thanh đó rồi chọn Copy address.

cách 2

Bây giờ các bạn sẽ tạo cho mình một cái Name bằng cách vào thẻ Formulas rồi chọn Name Manager rồi sau đó chọn New.

tạo tên mới

Trong cửa sổ New Name ở mục Name các bạn đặt tên bất kỳ, sau đó ở mục Refers to các bạn nhập =files(), trong ngoặc đó các bạn trỏ đến ô chứa địa chỉ folder các bạn mới Paste rồi Enter.

đặt vùng dữ liệu

Như vậy là các bạn đã có được 1 cái Name. Các bạn close lại để thực hành tiếp. Tiếp đến các bạn đến 1 ô bất kỳ gọi tên cái Name đó ra bằng cách gõ =Tênname rồi Enter là được.

Ví dụ: =LayTenFiles

gọi tên name

Khi các bạn Enter thì nó vẫn chưa ra các tên files đâu. Các bạn phải thêm lệnh gọi các tên files bằng cách vào địa chỉ folder lúc nãy thêm ký tự \* trong đó \ là thêm lệnh, còn * là nó sẽ gọi tất cả các files.

Ví dụ: C:\Users\Tien\Desktop\Bài Tập\*

gọi file

Các bạn có thể lồng thêm hàm Transpose để chuyển về cột cho dễ nhìn hơn.

Ví dụ: =TRANSPOSE(LayTenFiles)

lòng thêm hàm

Trong trường hợp mà các bạn chỉ muốn lấy file Word, Excel hoặc PowerPoint thôi thì các bạn chỉ thêm các đuôi tương ứng của những file đó lần lượt là xls,doc,ppt sau dấu *.

Ví dụ: C:\Users\Tien\Desktop\Bài Tập\*doc

lấy theo dạng

Các bạn có thể lồng thêm hàm Sort vào để sắp xếp theo thứ tự của bảng chữ cái.

Ví dụ: =SORT(TRANSPOSE(LayTenFiles))

sắp xếp thứ tự

Lấy danh sách tên file các phiên bản khác

Để làm trong các phiên bản khác thì các bạn sẽ nhập hàm như sau: =INDEX(LayTenFiles,ROW()-9), trong đó hàm Index để trỏ đến vùng điều kiện, trong bài này chính là LayTenFiles ( Name chúng ta đã tạo), sau đó dùng hàm Row để chỉ đến hàng hiện tại chứa hàm rồi trừ đi sao cho kết quả bằng 1 là được. Ví dụ bài của mình ở dòng 10 thì mình sẽ trừ đi 9 để nó lấy file đầu tiên rồi các bạn kéo xuống để copy công thức cũng như gọi ra các file còn lại.

gọi hàm

Như các bạn có thể thấy thì có những ô REF, đó là những ô các bạn kéo xuống bị thừa số lượng files. Các bạn có thể lồng thêm hàm IFERROR rồi thêm 1 thành phần ở cuối là “” tức là những ô nào bị thừa ra tức là sai hoặc trống thì nó sẽ trả về khoảng trắng. Rồi các bạn kéo lại để kiểm tra.

Ví dụ trong bài sẽ là: =IFERROR(INDEX(LayTenFiles,ROW()-9),"")

fix lỗi sai

Còn khi mà các bạn thêm file hoặc xóa đi 1 file mà muốn cập nhật lại thì các bạn có thể ấn chọn vào 1 ô bất kỳ rồi dùng tổ hợp phím Alt + Ctrl + F9 hoặc các bạn ấn chọn vào ô địa chỉ Folder rồi ấn Enter nó sẽ tự cập nhật.

cập nhật dữ liệu

Lưu ý cuối cùng là các file này các bạn muốn sử dụng được thì các bạn phải lưu dưới dạng .xlsm, các bạn mà lưu dưới dạng .xlsx sẽ không sử dụng được.

lưu dạng file

Chúc các bạn thành công.

Video hướng dẫn

 

CHO ĐIỂM BÀI VIẾT NÀY

vote data
0989.717.035
ZALO CHAT
TOP