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

Công thức chung

(=MIN(IF(range=criteria,values)))

Tóm lược

Để nhận được giá trị nhỏ nhất dựa trên tiêu chí, bạn có thể sử dụng hàm MIN cùng với hàm IF. Trong ví dụ được hiển thị, công thức trong G6 là:

(=MIN(IF(names=F6,times)))

Trong đó "tên" là phạm vi được đặt tên B6: B17 và thời gian là phạm vi được đặt tên D6: D17.

Đây là công thức mảng và phải được nhập bằng Control + Shift + Enter.

Giải trình

Hàm IF được đánh giá đầu tiên với kiểm tra logic sau:

names=F6

Điều này tạo ra một mảng các giá trị TRUE / FALSE, trong đó TRUE tương ứng với các hàng có tên khớp với giá trị trong F6:

(TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE;TRUE;FALSE;FALSE)

"Giá trị nếu đúng" cho IF là dải ô được đặt tên "lần", trả về toàn bộ thời gian. Kết quả là mảng từ kiểm tra logic "lọc" các giá trị thời gian một cách hiệu quả. Khi kết quả là TRUE, thời gian được chuyển vào mảng do IF trả về. Khi kết quả là FALSE, giá trị thời gian được thay thế bằng boolean FALSE:

(0.000868055555555556;FALSE;FALSE;0.000902777777777778;FALSE;FALSE;0.000914351851851852;FALSE;FALSE;0.000833333333333333;FALSE;FALSE)

Lưu ý: Thời gian trong Excel là các giá trị phân số, giải thích các giá trị thập phân dài.

Hàm IF hoạt động giống như một bộ lọc. Chỉ các giá trị thời gian được kết hợp với TRUE mới lọt qua bộ lọc, các giá trị khác được thay thế bằng FALSE.

Hàm IF cung cấp mảng này trực tiếp cho hàm MIN, trả về giá trị nhỏ nhất trong mảng. Giá trị FALSE sẽ tự động bị bỏ qua.

Ô trống

Các ô trống sẽ khiến giá trị 0 được chuyển vào MIN, điều này có thể gây ra kết quả không mong muốn. Để "lọc ra" các ô trống, bạn có thể thêm IF lồng nhau khác như sau:

=MIN(IF(names=F6,IF(times"",times)))

Với MINIFS

Hàm MINIFS, được giới thiệu trong Excel 2016 qua Office 365, được thiết kế để tính toán mức tối thiểu dựa trên một hoặc nhiều tiêu chí mà không cần công thức mảng. Với MINIFS, công thức trong G6 là:

=MINIFS(times,names,F6)

thú vị bài viết...