Lượt VBA | Đếm giá trị số bằng hàm đếm trong Excel VBA

Hàm đếm trong VBA Excel

Trong VBA, hàm Count được sử dụng để đếm có bao nhiêu ô có giá trị trong đó, chúng ta cần nhớ rằng những ô có số hoặc văn bản được đặt trong dấu ngoặc kép hoặc những ô có giá trị được nhập trực tiếp sẽ được đếm, những ô đó những dữ liệu ngẫu nhiên không thể dịch bằng excel sẽ không được tính.

Trong VBA COUNT là một hàm trang tính có thể được áp dụng thông qua lớp hàm trang tính. Nó không phải là một chức năng được tích hợp sẵn. Hàm COUNT VBA có thể đếm tất cả các giá trị số từ phạm vi giá trị được cung cấp.

Trong bài viết này, chúng tôi sẽ hướng dẫn bạn cách sử dụng hàm COUNT trong VBA.

Ví dụ về hàm đếm VBA

Hãy lấy một số ví dụ thực tế về Hàm Đếm VBA để hiểu hoạt động của nó.

Bạn có thể tải xuống Mẫu hàm đếm VBA này tại đây - Mẫu hàm đếm VBA

Ví dụ về số lượng VBA # 1

Hãy tự viết mã để áp dụng hàm COUNT này trong excel vba.

Bước 1: Khởi động macro bằng cách bắt đầu thủ tục Sub.

Mã:

 Sub Count_Example1 () End Sub 

Bước 2: Bây giờ chúng ta sẽ lưu trữ kết quả của hàm COUNT trong ô C2. Vì vậy, mã của chúng tôi phải là "Phạm vi (" C2 "). Giá trị =

Mã:

 Đếm phụ_Ví dụ1 () Phạm vi ("C2"). Giá trị = Kết thúc phụ 

Bước 3: Vì nó không phải là một hàm tích hợp sẵn trong VBA nên chúng ta cần áp dụng thông qua lớp Worksheet Function. Vì vậy, truy cập thông qua lớp chức năng trang tính.

Mã:

 Sub Count_Example1 () Range ("C2"). Giá trị = Worksheet Chức năng.Count (End Sub 

Bước 4: Bây giờ cung cấp phạm vi là A1 đến A7.

Mã:

 Sub Count_Example1 () Range ("C2"). Value = WorksheetFunction.Count (Range ("A1: A7")) End Sub 

Ok, đây là ba bước đơn giản để đi đến kết quả.

Bây giờ hãy chạy mã để xem kết quả trong ô C2.

Như thường lệ, chúng tôi nhận được kết quả là 3 giống như cách chúng tôi nhận được khi áp dụng hàm VBA COUNT trong một trang tính.

Nếu chúng ta quan sát thanh công thức, chúng ta không có công thức thay vì chúng ta chỉ nhận được kết quả của công thức. Để áp dụng công thức cho ô C2, chúng ta cần thay đổi mã của mình. Dưới đây là mã để áp dụng công thức.

Mã:

 Sub Count_Example1 () Range ("C2"). Value = "= Count (A1: A7)" End Sub 

Chạy mã VBA này bằng cách sử dụng phím F5 hoặc sau đó theo cách thủ công, điều này sẽ áp dụng công thức cho ô C2.

Ví dụ về số lượng VBA # 2

Bây giờ, hãy xem thêm một ví dụ với hàm COUNT. Đối với ví dụ này, hãy xem dữ liệu dưới đây.

Chúng tôi có một vài giá trị số & không phải số từ A1 đến A11. Bây giờ tôi sẽ áp dụng đoạn mã dưới đây để đếm các giá trị số từ phạm vi A1 đến A11.

Mã:

 Sub Count_Example2 () Range ("C2"). Value = "= Count (A1: A11)" End Sub 

Khi chúng tôi thực thi mã trên theo cách thủ công hoặc sử dụng phím F5, chúng tôi nhận được kết quả là 5.

Tuy nhiên, khi chúng tôi xem xét dữ liệu từ A1 đến A11, chúng tôi có các giá trị số trong các ô A1, A2, A3, A4, A5, A7 và A11. Vì vậy, tổng cộng, chúng ta có các giá trị số trong 7 ô nhưng công thức đã trả về kết quả chỉ là 5.

Lý do cho điều này là khi chúng ta xem xét kỹ từng ô trong ô A5 và A7, các giá trị được lưu trữ dưới dạng văn bản, không phải dưới dạng số. Vì vậy, hàm COUNT đã trả về kết quả chỉ là 5 vì nó xử lý những ô được định dạng hoặc lưu trữ dưới dạng văn bản dưới dạng giá trị không phải số và bỏ qua số đếm.

Như vậy, chúng ta có thể sử dụng hàm COUNT trong excel như một phần của cả trang tính và hàm VBA để đếm các giá trị số từ danh sách.