Nếu bạn từng nhìn chằm chằm vào một công thức Excel khổng lồ và nghĩ: “Chắc chắn phải có cách nào tốt hơn”, thì câu trả lời là có. Đó chính là LAMBDA và LET, hai hàm mạnh mẽ mà bạn không cần phải là một lập trình viên chuyên nghiệp vẫn có thể khai thác.
Tin vui là những hàm tuyệt vời này hiện đã có sẵn cho tất cả người dùng đăng ký Microsoft 365, kể cả những gói cơ bản nhất. Bạn không còn phải chờ đợi bản beta hay các bản dựng nội bộ nữa. Chúng đã sẵn sàng để cách mạng hóa cách bạn làm việc với Excel.
I. LET: “Dọn dẹp” công thức Excel lộn xộn, dễ đọc hơn
Bạn đã bao giờ xây dựng một công thức dài đến mức cần thanh cuộn để xem hết chưa? Hàm LET sinh ra là để khắc phục vấn đề đó.
LET cho phép bạn gán tên cho các phần của công thức – giống như việc bạn đặt biệt danh cho các giá trị hoặc phép tính. Thay vì lặp lại cùng một công thức phụ đến năm lần, bạn chỉ cần định nghĩa nó một lần, đặt cho nó một cái tên, sau đó tái sử dụng cái tên đó trong suốt phép tính của mình. Điều này không chỉ giúp công thức ngắn gọn hơn mà còn tăng tính dễ đọc và khả năng bảo trì.
Ví dụ, hãy sử dụng LET để chấm điểm học sinh. Nếu không có LET, công thức sẽ trở nên rất rối rắm:
=IFS(AVERAGE(B2:E2) > 85, "Grade A", AVERAGE(B2:E2) >= 70, "Grade B", AVERAGE(B2:E2)
Ở đây có ba lần lặp lại hàm AVERAGE(B2:E2), điều này khá kém hiệu quả và khó đọc. Hàm LET cho phép chúng ta định nghĩa phần này chỉ một lần:
=LET(student_average, AVERAGE(B2:E2), IFS(student_average > 85, "Grade A", student_average >= 70, "Grade B", student_average < 70, "Grade C"))
Giờ đây, công thức của bạn đã gọn gàng, dễ đọc và dễ bảo trì hơn rất nhiều. Nếu bạn cần cập nhật logic của student_average, thay đổi sẽ được áp dụng xuyên suốt công thức. Bạn có thể định nghĩa tới 126 biến trong một hàm LET (thật đáng kinh ngạc!), điều này khiến nó trở nên hoàn hảo cho việc tính toán các chỉ số phức tạp, xây dựng bảng điều khiển một ô chứa đầy logic, hoặc đơn giản là hiểu được công thức bạn đã viết sáu tháng trước.
II. LAMBDA: Tự tạo hàm Excel tùy chỉnh mạnh mẽ
LAMBDA là một hàm được nhiều chuyên gia Excel yêu thích bởi nó cho phép biến một công thức khổng lồ, phức tạp thành một cái gì đó dễ quản lý hơn nhiều (ví dụ như =TốcĐộTăngTrưởng(B2, C2)
). Bạn chỉ cần định nghĩa nó một lần, lưu lại với một cái tên, và tái sử dụng nó trên toàn bộ sổ làm việc của mình. Khi bạn cần điều chỉnh logic, bạn chỉ cần thay đổi ở một vị trí duy nhất (thông qua Name Manager của Excel), và cập nhật sẽ được áp dụng ở mọi nơi.
1. Hướng dẫn xây dựng hàm tùy chỉnh đầu tiên của bạn
Quá trình này đơn giản hơn bạn nghĩ:
- Mở sổ làm việc mà bạn muốn sử dụng hàm tùy chỉnh này.
- Thay thế các giá trị thực của bạn bằng các tên giữ chỗ (ví dụ: “giá” và “tỷ lệ”).
- Kiểm tra hàm LAMBDA trong bất kỳ ô nào để đảm bảo nó hoạt động đúng.
- Nhấn Ctrl+F3 để mở Name Manager, nhấp vào New và dán chuỗi LAMBDA của bạn vào trường Refers To.
- Đặt cho hàm mới của bạn bất kỳ tên nào bạn muốn, và thêm bất kỳ bình luận nào có thể hữu ích sau này.
Bây giờ bạn có thể gõ công thức bên dưới, giống như bất kỳ hàm tích hợp sẵn nào của Excel:
=TênHàmCủaBạn()
Các hàm LAMBDA được lưu trong một sổ làm việc cụ thể, vì vậy chúng sẽ không tự động hoạt động trong các tệp khác. Để tái sử dụng chúng trên nhiều tệp, bạn có thể thử add-in Advanced Formula Environment để nhập hoặc xuất các hàm của mình.
Ví dụ, giả sử bạn là một gia sư tự do và thường xuyên phải tính điểm. Bạn có thể phải sử dụng một công thức như thế này:
=IFS(A1>=80,"Giỏi", A1>=50,"Đạt", A1<50,"Trượt")
Thay vì gõ đoạn mã này mỗi lần, bạn có thể tạo một hàm “Score Calculator” (Bộ tính điểm):
=LAMBDA(điểm, IFS(điểm>=80,"Giỏi", điểm>=50,"Đạt", điểm<50,"Trượt"))
Lưu hàm này trong Name Manager với tên “TínhĐiểm”, và bây giờ bạn chỉ cần gõ công thức dưới đây vào bất kỳ đâu trong sổ làm việc của mình:
=TínhĐiểm(B2)
Kết quả ví dụ công thức tính điểm bằng LAMBDA trong Excel
Bạn thậm chí có thể sử dụng LAMBDA cho các hàm phức tạp hơn, như một hàm loại bỏ từng ký tự không mong muốn, hoặc một hàm tiếp tục nhân cho đến khi đạt 1 (chỉ vì bạn có thể). Những hàm phức tạp này thoạt nhìn có vẻ rắc rối, nhưng một khi đã được lưu, tất cả các hàm LAMBDA đều trở nên “cắm và chạy”. Và nhờ các chatbot AI, bạn có thể dễ dàng tạo ra các công thức và chuỗi truy vấn mình cần.
III. Sức mạnh tổng hợp: Kết hợp LET và LAMBDA cho công thức thân thiện hơn
Đứng riêng lẻ, LET và LAMBDA đã rất tuyệt vời. Nhưng khi bạn kết hợp chúng, chúng trở thành một “cặp đôi quyền lực” đúng nghĩa.
Khi bạn đang tạo một hàm LAMBDA, bạn có thể sử dụng LET bên trong chuỗi để đặt tên cho các phần logic. Hãy hình dung bạn đang chia một công thức phức tạp thành các bước rõ ràng trước khi “nướng” chiếc bánh cuối cùng. Bạn sẽ đặt tên cho từng thành phần để mỗi bước trở nên có ý nghĩa.
Giả sử bạn cần tính diện tích tam giác bằng công thức Heron, một phép tính nổi tiếng là phức tạp:
=SQRT(((a+b+c)/2)*(((a+b+c)/2)-a)*(((a+b+c)/2)-b)*(((a+b+c)/2)-c))
Chúc may mắn khi gỡ lỗi công thức đó sáu tháng sau! May mắn thay, với LET và LAMBDA, bạn có thể làm gọn nó:
=LAMBDA(a, b, c, LET(s, (a + b + c) / 2, SQRT(s * (s - a) * (s - b) * (s - c))))
Thay vì lặp lại (a+b+c)/2 bốn lần, giờ bạn có s xuất hiện bốn lần, dễ hiểu hơn rất nhiều. Hơn nữa, bạn có thể lưu toàn bộ hàm LAMBDA này trong Name Manager. Giờ đây, phép tính phức tạp đó trở nên dễ đọc, hiệu quả và dễ dàng tái sử dụng.
Minh họa cách hàm LAMBDA tính diện tích tam giác Heron trong Excel
Bạn cũng có thể xây dựng toàn bộ báo cáo trong một ô duy nhất bằng cách kết hợp này. Hãy tưởng tượng một hàm nhận dữ liệu bán hàng của bạn và trả về một bản tóm tắt hàng tháng được định dạng gọn gàng trong một ô:
=LAMBDA(cột_sản_phẩm, cột_doanh_số, LET(_tổng_doanh_số, SUM(cột_doanh_số), sản_phẩm_hàng_đầu, INDEX(cột_sản_phẩm, XMATCH(MAX(cột_doanh_số), cột_doanh_số)), TEXTJOIN(CHAR(10), TRUE, "Báo cáo tháng", "Tổng doanh số: " & TEXT(_tổng_doanh_số, "$#,##0.00"), "Sản phẩm hàng đầu: " & sản_phẩm_hàng_đầu)))
Lưu hàm này dưới tên “BáoCáoTháng” và gọi nó bằng công thức bên dưới. Với một hàm trong một ô, bạn sẽ nhận được một báo cáo hoàn chỉnh.
=BáoCáoTháng(B:B, C:C)
Khi bạn bắt đầu sử dụng LET và LAMBDA, bạn không còn tư duy như một “cỗ máy công thức” nữa mà bắt đầu tư duy như một con người. LET mang lại cấu trúc cho công thức của bạn bằng cách đặt tên cho từng bước, trong khi LAMBDA biến logic thành các hàm dễ tái sử dụng và thân thiện với người dùng. Cùng nhau, chúng giúp công thức Excel dễ viết, dễ đọc và dễ tái sử dụng hơn.
Vì vậy, lần tới khi bạn thấy mình đang viết một công thức trông như thể nó thuộc về một tiểu thuyết khoa học viễn tưởng, hãy dừng lại. Tự hỏi bản thân: “Liệu đây có phải là một LAMBDA?”. Rất có thể, câu trả lời là có. Hãy thử áp dụng ngay các hàm này vào công việc hàng ngày của bạn và chia sẻ những khám phá thú vị của bạn về LAMBDA và LET cùng chúng tôi nhé!