Công thức Excel: Giá trị nhỏ nhất nếu là duy nhất
Công thức Excel: Giá trị nhỏ nhất nếu là duy nhất

Công thức chung
=MIN(UNIQUE(range,0,1))
Tóm lược

Để tìm giá trị duy nhất tối thiểu trong một tập dữ liệu, bạn có thể sử dụng Hàm UNIQUE cùng với Hàm MIN. Trong ví dụ dưới đây, công thức trong E5 là:

=MIN(UNIQUE(data,0,1))

nơi “dữ liệu” là phạm vi được đặt tên B5: B14.

Trong các phiên bản Excel cũ hơn, bạn có thể sử dụng công thức mảng dựa trên các hàm MIN, IF và COUNTIF như được giải thích bên dưới.

Giải trình

Mục tiêu trong ví dụ này là trả về giá trị nhỏ nhất là duy nhất, tức là giá trị nhỏ nhất chỉ xuất hiện một lần trong dữ liệu.

Chức năng DUY NHẤT, mới trong Excel 365, sẽ trả về một danh sách giá trị duy nhất từ ​​một tập dữ liệu. Theo mặc định, đây là danh sách bất kỳ giá trị nào xuất hiện một hoặc nhiều lần trong dữ liệu.

UNIQUE có đối số thứ ba tùy chọn được gọi là “chính xác một lần“sẽ giới hạn kết quả ở các giá trị chỉ xuất hiện một lần trong dữ liệu nguồn. Để bật tính năng này, đối số cần được đặt thành TRUE hoặc 1.

Làm việc từ trong ra ngoài, hàm UNIQUE được cấu hình như sau:

UNIQUE(data,0,1)

Đối với mảng, chúng tôi cung cấp phạm vi được đặt tên dữ liệu. Cho by_col đối số, chúng tôi sử dụng số không (0), vì chúng tôi muốn các giá trị duy nhất theo hàng, không phải cột. Cuối cùng, cho chính xác một lần, chúng tôi cung cấp 1, vì chúng tôi chỉ muốn các giá trị chỉ xuất hiện một lần trong dữ liệu nguồn.

Được định cấu hình theo cách này, UNIQUE trả về 4 giá trị chỉ xuất hiện một lần:

{700;600;500;300} // result from unique

Mảng này được trả về trực tiếp cho hàm MIN, trả về giá trị nhỏ nhất, 300, là kết quả cuối cùng:

=MIN({700;600;500;300}) // returns 300

Công thức mảng với COUNTIF

Nếu bạn đang sử dụng phiên bản Excel không có hàm UNIQUE, bạn có thể tìm giá trị duy nhất nhỏ nhất bằng công thức mảng dựa trên các hàm COUNTIF, MIN và IF.

{=MIN(IF(COUNTIF(data,data)=1,data))}

Đây là công thức mảng và phải được nhập bằng control + shift + enter, ngoại trừ trong Excel 365.

Làm việc từ trong ra ngoài, Hàm COUNTIF được sử dụng để tạo số lượng từng giá trị trong dữ liệu như sau:

COUNTIF(data,data) // count all values

Vì có 10 giá trị trong phạm vi được đặt tên dữ liệu, COUNTIF trả về một mảng gồm 10 kết quả:

{2;1;1;2;1;2;2;2;1;2}

Mảng này chứa số lượng của mỗi giá trị. Tiếp theo, chúng tôi kiểm tra mảng cho các giá trị bằng 1:

{2;1;1;2;1;2;2;2;1;2}=1

Một lần nữa, chúng tôi nhận được một mảng với 10 kết quả:

{FALSE;TRUE;TRUE;FALSE;TRUE;FALSE;FALSE;FALSE;TRUE;FALSE}

Mỗi giá trị TRUE tương ứng với một giá trị trong dữ liệu nguồn chỉ xuất hiện một lần. Mảng này được phân phối trực tiếp đến Hàm IF, sử dụng nó như một bộ lọc. Chỉ các giá trị trong dữ liệu được liên kết với TRUE mới đưa nó vào mảng được trả về bởi IF, tất cả các giá trị khác đều FALSE.

{FALSE;700;600;FALSE;500;FALSE;FALSE;FALSE;300;FALSE}

Mảng này được trả về trực tiếp cho Hàm MIN tự động bỏ qua các giá trị logic và trả về giá trị nhỏ nhất còn lại, 300, là kết quả cuối cùng.

https://exceljet.net/formula/minimum-value-if-unique