VBA Excel (Bài 20): Đếm số Sheets trong 1 Workbook bằng công thức hoặc VBA

CÁCH 1: KẾT HỢP NAMED RANGE VÀ CÔNG THỨC COUNTA

Chú ý: khi áp dụng cách này bạn phải lưu file Excel dưới dạng xlsm có hỗ trợ Macro bởi vì hàm GET.WORKBOOK sẽ sử dụng sau đây thuộc về Macro 4.0

BƯỚC 1

Tạo 1 named Range với công thức sau đây, giả sử name này là num_of_ws

=RIGHT(GET.WORKBOOK(1),LEN(GET.WORKBOOK(1))-FIND(“]”,GET.WORKBOOK(1)))

BƯỚC 2

Trong ô muốn nhận lại kết quả có bao nhiêu sheets, sử dụng công thức

=COUNTA(num_of_ws)

CÁCH 2: KẾT HỢP NAMED RANGE VÀ CÔNG THỨC COUNTA, INDEX

Chú ý: khi áp dụng cách này bạn phải lưu file Excel dưới dạng xlsm có hỗ trợ Macro bởi vì hàm GET.WORKBOOK sẽ sử dụng sau đây thuộc về Macro 4.0

BƯỚC 1

Tạo một name range với công thức sau đây, giả sử name này có tên là num_of_ws

=GET.WORKBOOK(1)&T(NOW())

BƯỚC 2

Trong ô muốn hiện kết quả của tài liệu Excel, sử dụng công thức sau:

 =COUNTA(INDEX(num_of_ws,0))

CÁCH 3: SỬ DỤNG VBA

BƯỚC 1

Mở trình soạn thảo VBA bằng cách bấm giữ phím ALT + F11 trên bàn phím

BƯỚC 2

Tạo một module mới bằng cách bấm chuột phải trong cửa sổ Project – VBAProject và chọn Insert > Module

BƯỚC 3

Trong cửa sổ Code, dán nội dung code sau vào

BƯỚC 4

Bấm phím F5 để chạy macro này và nhận kết quả.