Trong bài viết trước đó, Mytour đã giới thiệu về hàm TRIM trong Excel VBA. Trong bài viết này, chúng ta sẽ tiếp tục tìm hiểu về hàm DIR trong VBA.
Mục Lục:
1. Sử dụng hàm DIR trong VBA.
2. Cú pháp của hàm DIR trong VBA.
3. Sử dụng ký tự đại diện cùng hàm DIR trong VBA.
1. Sử dụng hàm DIR trong VBA
Hàm DIR trong VBA được dùng để nhận tên file hoặc thư mục, dựa trên đường dẫn của chúng.
Ví dụ, khi có một thư mục chứa một file Excel, ta có thể sử dụng hàm DIR VBA để lấy tên của file đó (hoặc tên loại file bất kỳ).
Nếu muốn lấy tên của tất cả các file Excel trong thư mục (hoặc tất cả các file không phải là Excel), ta cũng có thể sử dụng hàm DIR.
Nếu sử dụng hàm DIR một lần, nó sẽ trả về tên file đầu tiên trong thư mục. Để lấy tên file của các tập tin khác, bạn có thể tái sử dụng DIR để làm điều này.
Hàm DIR trả về tên file đầu tiên khớp với tên đường dẫn. Để lấy tên file bổ sung không khớp với tên đường dẫn, chỉ cần gọi lại DIR mà không có đối số. Khi không có tên file nào khớp, DIR sẽ trả về chuỗi có độ dài bằng 0 ('').
2. Cú pháp hàm DIR trong VBA
Cú pháp của hàm DIR trong VBA có dạng như sau:
DIR [ (đường dẫn [ ,thuộc tính ] ) ]
Nội dung như sau:
- Đường dẫn: (pathname): là đối số tùy chọn, có thể là tên file hoặc thư mục. Nếu không tìm thấy, hàm DIR trong VBA sẽ trả về chuỗi rỗng ('').
- Thuộc tính (attributes): là đối số tùy chọn, dùng để chỉ định một số thuộc tính, hàm DIR sẽ trả về tên file dựa trên các thuộc tính đó.
Ví dụ, để liệt kê danh sách các tập tin ẩn hoặc chỉ đọc (cùng với những tập tin không có thuộc tính), chỉ cần chỉ định trong đối số này.
Dưới đây là danh sách các thuộc tính có sẵn để sử dụng trong hàm DIR trong VBA (có thể sử dụng một hoặc nhiều thuộc tính này):
Hằng số Mô tả Giá trị
vbNormal 0 (Mặc định) chỉ định tập tin không có thuộc tính.
vbReadOnly 1 Xác định tập tin chỉ đọc cùng với những tập tin không có thuộc tính.
vbHidden 2 Xác định tập tin ẩn cùng với những tập tin không có thuộc tính.
VbSystem 4 Xác định tập tin hệ thống cùng với những tập tin không có thuộc tính. Không có sẵn trên Mac OS X.
vbVolume 8 Xác định tên phân vùng. Nếu có các thuộc tính khác được chỉ định, vbVolume sẽ bị bỏ qua. Không có sẵn trên Mac OS X.
vbDirectory 16 Xác định các thư mục hoặc các thư mục cùng với những tập tin không có thuộc tính.
vbAlias 64 Xác định tên file là bí danh. Chỉ có sẵn trên Mac OS X.
3. Sử dụng ký tự đại diện với hàm DIR trong VBA
Nếu sử dụng Windows, bạn cũng có thể sử dụng các ký tự đại diện trong hàm DIR.
Lưu ý: Không thể sử dụng các ký tự này với hàm VBA trên Mac OS X.
Việc sử dụng các ký tự đại diện có thể hữu ích trong một số trường hợp sau:
- Khi muốn lấy tên của các file đặc biệt (ví dụ: .XLSX hoặc .PPTX).
- Khi có một tiền tố / hậu tố cụ thể trong tên file và muốn lấy tên của các file / thư mục này. Ví dụ, để lấy tên của tất cả các file có tiền tố 2019, chúng ta có thể sử dụng các ký tự đại diện.
Trong Excel, có tổng cộng 3 ký tự đại diện, bao gồm:
1. (dấu hoa thị): Đại diện cho số lượng ký tự bất kỳ. Ví dụ, 2019 sẽ cho bạn tất cả các tên file có tiền tố là 2019.
2. ? (dấu hỏi): Đại diện cho một ký tự duy nhất. Ví dụ, 2019? sẽ cho bạn tất cả các tên file bắt đầu bằng 2019 và có một ký tự khác tiếp theo, chẳng hạn như 2019A, 2019B, ... .
3. - (dấu ngã): Ký tự đại diện này hiếm khi được sử dụng nên chúng tôi sẽ bỏ qua, không đi sâu vào giới thiệu cụ thể.
Trong phần 1 của loạt bài về Hàm DIR trong VBA, Mytour đã hướng dẫn cách sử dụng và cú pháp của hàm DIR. Hãy đón đọc phần 2 để có kiến thức sâu hơn về loại hàm này. Nếu bạn có câu hỏi hoặc thắc mắc, hãy để lại bình luận dưới bài viết nhé.