
Công thức chung
=COUNTA(UNIQUE(data))
Tóm lược
Để đếm các giá trị duy nhất trong một tập dữ liệu, bạn có thể sử dụng hàm UNIQUE cùng với hàm COUNTA. Trong ví dụ được hiển thị, công thức trong F5 là:
=COUNTA(UNIQUE(B5:B16))
trả về 7, vì có bảy màu duy nhất trong B5: B16.
Giải trình
Ví dụ này sử dụng hàm UNIQUE để trích xuất các giá trị duy nhất. Khi UNIQUE được cung cấp với phạm vi B5: B16, chứa 12 giá trị, nó sẽ trả về 7 giá trị duy nhất được thấy trong D5: D11. Chúng được trả về trực tiếp cho hàm COUNTA dưới dạng một mảng như sau:
=COUNTA(("red";"amber";"green";"blue";"purple";"pink";"gray"))
Không giống như hàm COUNT chỉ đếm số, hàm COUNTA đếm cả văn bản và số. Vì có bảy mục trong mảng, COUNTA trả về 7. Công thức này là động và sẽ được tính toán lại ngay lập tức khi dữ liệu nguồn được thay đổi.
Với tham chiếu ô
Bạn cũng có thể tham khảo danh sách các giá trị duy nhất đã được trích xuất vào trang tính bằng hàm UNIQUE bằng cách sử dụng một loại tham chiếu ô đặc biệt. Công thức trong D5 là:
=UNIQUE(B5:B16)
trả về bảy giá trị được thấy trong D5: D11. Để đếm các giá trị này bằng tham chiếu động, bạn có thể sử dụng công thức như sau:
=COUNTA(D5#)
Ký tự băm (#) cho Excel biết để tham chiếu đến phạm vi tràn được tạo bởi UNIQUE. Giống như công thức tất cả trong một ở trên, công thức này là động và sẽ điều chỉnh khi dữ liệu được thêm vào hoặc xóa khỏi phạm vi gốc.
Đếm khoảng trống bỏ qua duy nhất
Để đếm các giá trị duy nhất trong khi bỏ qua các ô trống, bạn có thể thêm hàm FILTER như sau:
=COUNTA(UNIQUE(FILTER(data,data"")))
Cách tiếp cận này được giải thích chi tiết hơn ở đây. Bạn cũng có thể lọc các giá trị duy nhất với các tiêu chí.
Không có dữ liệu
Một hạn chế của công thức này là nó sẽ trả về 1 không chính xác nếu không có bất kỳ giá trị nào trong phạm vi dữ liệu. Thay thế này sẽ đếm tất cả các giá trị trả về bởi UNIQUE có độ dài lớn hơn 0. Nói cách khác, nó sẽ đếm tất cả các giá trị có ít nhất một ký tự:
=SUM(--(LEN(UNIQUE(B5:B16))>0))
Ở đây, hàm LEN được sử dụng để kiểm tra độ dài của kết quả từ UNIQUE. Sau đó, độ dài được kiểm tra để xem chúng có lớn hơn không và kết quả được tính bằng hàm SUM. Đây là một ví dụ về logic boolean. Công thức này cũng sẽ loại trừ các ô trống khỏi kết quả.
Dải nguồn động
UNIQUE sẽ không tự động thay đổi phạm vi nguồn nếu dữ liệu được thêm hoặc xóa. Để cung cấp cho UNIQUE một phạm vi động sẽ tự động thay đổi kích thước khi cần, bạn có thể sử dụng Bảng Excel hoặc tạo phạm vi được đặt tên động bằng công thức.
Không có mảng động
Nếu bạn đang sử dụng phiên bản Excel cũ hơn mà không hỗ trợ mảng động, đây là một số lựa chọn thay thế.