Chào các anh chị em trong diễn đàn,
Dạo này mình làm báo cáo hay gặp phải tình huống dùng hàm IF lồng nhau để phân loại dữ liệu. Tuy nhiên, không ít lần gặp lỗi #VALUE! rất khó chịu. Sau một hồi mày mò và tìm hiểu, mình phát hiện ra nguyên nhân và cách khắc phục khá đơn giản, muốn chia sẻ lại cho mọi người.
Nguyên nhân phổ biến:
- Sai kiểu dữ liệu: Khi so sánh hoặc thực hiện phép tính trong các điều kiện của hàm
IF, nếu các giá trị có kiểu dữ liệu khác nhau (ví dụ: số với chuỗi, hoặc ngày tháng không đúng định dạng), Excel sẽ báo lỗi#VALUE!. - Thiếu đối số hoặc dấu ngoặc: Trong chuỗi hàm
IFlồng nhau, việc gõ thiếu dấu ngoặc đóng hoặc thiếu đối số cho một trong các hàmIFcon là rất dễ xảy ra. - Kết quả trung gian là lỗi: Nếu một trong các hàm
IFcon trả về một lỗi khác (như#N/A,#REF!), thì hàmIFcha cũng có thể trả về#VALUE!.
Cách khắc phục:
- Kiểm tra kiểu dữ liệu: Sử dụng hàm
VALUE()để chuyển đổi chuỗi thành số hoặcTEXT()để định dạng ngày tháng theo chuẩn. Hoặc đơn giản là đảm bảo dữ liệu nguồn đã được định dạng đúng. - Kiểm tra cấu trúc hàm: Rà soát lại từng hàm
IF, đảm bảo số lượng dấu ngoặc đóng khớp với dấu ngoặc mở, và đủ 3 đối số (logic_test, value_if_true, value_if_false). - Xử lý lỗi lồng nhau: Sử dụng hàm
IFERROR()bao quanh các hàmIFcon hoặc toàn bộ công thức để bắt và xử lý các lỗi có thể xảy ra, trả về một giá trị mặc định (ví dụ: 0,