LET
LogicNên biếtExcel 365, 2021 trở lên
LET(tên_1, giá_trị_1, [tên_2, giá_trị_2], ..., công_thức_cuối)Đặt TÊN cho các phần tính trung gian ngay trong một công thức. Công thức dài đọc ra nghĩa thay vì một dãy ngoặc, và phần tính lặp lại chỉ chạy một lần nên nhanh hơn.
Các đối số
| Đối số | Bắt buộc? | Ý nghĩa |
|---|---|---|
| tên_1 | Bắt buộc | Tên tự đặt, phải bắt đầu bằng chữ cái, không trùng tên ô. |
| giá_trị_1 | Bắt buộc | Phần tính gán cho tên đó. Tên khai trước dùng được trong phần khai sau. |
| công_thức_cuối | Bắt buộc | Đối số CUỐI CÙNG, là biểu thức cho ra kết quả của cả hàm. |
Ví dụ
=LET(dt, SUMIFS(DoanhThu, Mã, B2), gv, SUMIFS(GiaVon, Mã, B2), IF(dt=0, 0, (dt-gv)/dt))Biên lợi nhuận: mỗi SUMIFS chạy một lần thay vì hai lần
Kết quả: 18,4%
=LET(kq, FILTER(A2:D500, D2:D500>0), IF(ROWS(kq)=0, "Không có", kq))Lọc một lần rồi vừa đếm vừa hiện, không lọc hai lượt
Kết quả: bảng kết quả
Lưu ý khi dùng
- Số đối số phải LẺ: từng cặp tên-giá trị, cộng thêm công thức cuối.
- Tên đặt trong LET chỉ sống trong chính công thức đó, không ảnh hưởng Name Manager.
Bẫy hay dính
Đặt tên trùng với một Name đã có trong Name Manager hoặc trùng tên cột của Table: công thức vẫn chạy nhưng lấy giá trị của LET chứ không phải thứ người đọc tưởng, và không có cảnh báo nào.