Menu

COUNTIF ô không trống trong Excel: đếm ô có dữ liệu

=COUNTIF(B2:B8,"<>") đếm các ô trong B2:B8 không trống, giống như COUNTA. Thêm điều kiện khác bằng COUNTIFS và xử lý những ô chỉ trông như trống.

Mọi bảng tính trên trang này đều trực tiếp: đổi một số hoặc công thức, bảng tính sẽ tự tính lại.

=COUNTIF(B2:B8,"<>") đếm các ô trong B2:B8 không trống. <> nghĩa là "khác", và khi không có gì phía sau, phép so sánh là với một ô trống. =COUNTA(B2:B8) cho cùng kết quả.

Đếm các ô đã điền
F2
ABCDEF
1NameEmailPhoneCountResult
2Anaana@mail.com555-0101Emails, COUNTIF5
3Ben555-0102Emails, COUNTA5
4Caracara@mail.comMissing emails2
5Dandan@mail.com555-0104Phones4
6EvaRows7
7Finnfinn@mail.com555-0106
8Gusgus@mail.com
Bấm vào một ô để xem công thức. Đổi một số hoặc công thức, bảng tính sẽ tự tính lại.

Năm trong bảy liên hệ có email, nên F2 và F3 đều hiện 5, còn COUNTBLANK đếm hai ô bị thiếu. Số ô đã điền cộng số ô trống luôn bằng số hàng ở F6. Nhập một email vào B3 thì F2 tăng thêm một còn F4 giảm đi một.

COUNTIF ô không trống và COUNTA

Với một vùng, =COUNTIF(B2:B8,"<>") và =COUNTA(B2:B8) đếm cùng các ô: mọi thứ không trống, gồm số, ngày, TRUE/FALSE và giá trị lỗi. COUNTA ngắn gọn hơn. Dạng "<>" sinh ra cho lúc bạn cần thêm điều kiện thứ hai, vì COUNTA không nhận điều kiện còn COUNTIFS thì có.

COUNT là một hàm khác: nó chỉ đếm số và ngày, nên một cột tên sẽ cho 0. Ba hàm được so sánh ở trang COUNT và COUNTA.

Ngược lại với không trống là "": =COUNTIF(B2:B8,"") đếm các ô trống, giống COUNTBLANK.

COUNTIFS không trống kèm điều kiện khác

Dùng "<>" làm một trong các điều kiện của COUNTIFS. Ở bảng dưới, có ngày giao hàng nghĩa là đơn đã được gửi đi.

Không trống kèm một điều kiện
F2
ABCDEF
1RegionOrderShippedConditionCount
2NorthA-1012026-01-08North, shipped2
3SouthA-102North, not shipped1
4NorthA-1032026-02-06Any region, shipped3
5EastA-1042026-02-20Order and date filled3
6SouthA-105
7NorthA-106
Bấm vào một ô để xem công thức. Đổi một số hoặc công thức, bảng tính sẽ tự tính lại.

F2 đếm hai đơn North có ngày giao, F3 đếm đơn không có ngày. F5 đặt "<>" cho hai cột, nên nó đếm các hàng mà cả hai cột đều đã điền. Điều kiện này cũng dùng được trong SUMIFS và AVERAGEIFS: =SUMIFS(D2:D7,C2:C7,"<>") sẽ cộng cột số tiền D chỉ cho các hàng đã giao.

Những ô chỉ trông như trống

Một ô chứa dấu cách trông như trống nhưng thực ra chứa văn bản, và cả "<>" lẫn COUNTA đều đếm nó. Chuyện này hay xảy ra với dữ liệu dán từ hệ thống khác hoặc bị "xóa" bằng cách gõ một dấu cách. Để đếm các ô có nội dung nhìn thấy được, hãy cắt bỏ dấu cách rồi kiểm tra độ dài.

Dấu cách không phải là trống
E2
ABCDE
1NameNoteCountResult
2Anacall backCOUNTA4
3Ben Visible content2
4CaraSpace in B3?1
5Danpaid
6Eva
Bấm vào một ô để xem công thức. Đổi một số hoặc công thức, bảng tính sẽ tự tính lại.

B3 chứa một dấu cách và B6 chứa hai. COUNTA đếm chúng cùng với hai ghi chú thật và hiện 4. Phiên bản SUMPRODUCT cắt dấu cách ở từng ô và chỉ đếm những ô còn lại nội dung: 2. Để làm sạch chính các ô đó, chọn chúng rồi nhấn Delete, hoặc dùng TRIM trong một cột phụ. Thay mọi dấu cách bằng chuỗi rỗng trong Find and Replace cũng sẽ biến "call back" thành "callback".

Công thức trả về chuỗi rỗng

Một công thức như =IF(C2>0,C2,"") không hiển thị gì khi điều kiện sai, nhưng ô đó không trống: nó chứa một công thức có kết quả là chuỗi rỗng. Các hàm đếm xử lý nó theo những cách khác nhau. Với A2:A6 chứa Apple, một công thức trả về "", một ô trống, 5 và Pear, Excel cho:

=COUNTA(A2:A6)                   4   counts the "" formula
=COUNTIF(A2:A6,"<>")             4   counts the "" formula
=COUNTBLANK(A2:A6)               2   counts the "" formula as blank
=COUNTIF(A2:A6,"")               2   counts the "" formula as blank
=SUMPRODUCT(--(LEN(A2:A6)>0))    3   counts only visible content
=COUNTIF(A2:A6,"?*")             2   counts text of at least one character

Vậy ô chứa công thức đó vừa được đếm là trống vừa được đếm là không trống, và COUNTA cộng COUNTBLANK lớn hơn số ô. Khi một cột toàn những công thức như vậy, hãy đếm bằng =SUMPRODUCT(--(LEN(A2:A6)>0)), chỉ đếm các ô có hiển thị nội dung. Kèm điều kiện thứ hai: =SUMPRODUCT((B2:B6="North")*(LEN(A2:A6)>0)).

Luyện tập: không trống kèm một điều kiện

Đến lượt bạn: liên hệ ở Paris có số điện thoại
F2
ABCDEF
1NameCityPhoneCountResult
2AnaParis555-0101Paris with phone
3BenLyon555-0102
4CaraParis
5DanParis555-0104
6EvaLyon
7FinnNice555-0106
8GusParis
Bấm vào một ô để xem công thức. Đổi một số hoặc công thức, bảng tính sẽ tự tính lại.

Đến lượt bạn: Đếm số liên hệ ở Paris có số điện thoại trong cột C. Viết công thức vào F2.

Nên dùng công thức nào

Bạn muốn đếmCông thức
Ô đã điền trong một vùng=COUNTA(B2:B8)
Ô đã điền kèm điều kiện khác=COUNTIFS(A2:A8,"North",B2:B8,"<>")
Hàng có hai cột đều đã điền=COUNTIFS(B2:B8,"<>",C2:C8,"<>")
Ô có nội dung nhìn thấy được, bỏ qua dấu cách và công thức ""=SUMPRODUCT(--(LEN(TRIM(B2:B8))>0))
Chỉ ô văn bản đã điền=COUNTIF(B2:B8,"?*")
Ô trống=COUNTBLANK(B2:B8)

Để kiểm tra một ô thay vì đếm, =B2<>"" trả về TRUE khi B2 hiển thị nội dung, còn =ISBLANK(B2) chỉ trả về TRUE khi B2 thật sự trống, không chứa công thức nào.

Câu hỏi thường gặp

COUNTIF "<>" có giống COUNTA không?

Với một vùng thì có: =COUNTIF(B2:B8,"<>") và =COUNTA(B2:B8) đếm cùng các ô (văn bản, số, ngày, TRUE/FALSE và lỗi). Dạng "<>" dành cho COUNTIFS, nơi nó có thể đứng cạnh một điều kiện khác.

"<>" trong COUNTIF có nghĩa là gì?

<> nghĩa là "khác", và khi không có gì phía sau, phép so sánh là với một ô trống. Vì vậy "<>" nghĩa là "không trống", còn "<>North" nghĩa là "khác North".

Làm sao đếm các ô không trống và khác 0?

Dùng =COUNTIFS(B2:B8,"<>",B2:B8,"<>0"). Riêng điều kiện "<>0" vẫn đếm cả ô trống, vì ô trống khác 0; thêm "<>" sẽ loại chúng ra.

Vì sao COUNTA đếm cả những ô trông như trống?

Những ô đó không trống: chúng chứa một dấu cách, hoặc một công thức trả về chuỗi rỗng "". Để chỉ đếm các ô có nội dung nhìn thấy được, dùng =SUMPRODUCT(--(LEN(TRIM(B2:B8))>0)).

Hình minh họa các ngôn ngữ lập trình của Coddy

Học lập trình cùng Coddy

Bắt đầu