NA: tạo lỗi #N/A có chủ đích, khiến biểu đồ bỏ qua thay vì vẽ sai
Chia sẻ
"Hàm NA() cố tình tạo ra lỗi #N/A — nghe ngược đời, nhưng đây chính là cách đúng để biểu đồ đường bỏ qua một điểm dữ liệu chưa có, thay vì vẽ nhầm nó thành số 0."
Bài về xử lý lỗi trong Excel trước giờ đều nói về cách tránh gặp lỗi #N/A. NA đi ngược lại hoàn toàn: đây là hàm cố tình tạo ra lỗi #N/A, và có đúng một tình huống thực tế nó là lựa chọn tốt hơn hẳn so với việc để trống hay điền số 0.
Công thức trong bài dùng dấu phẩy (,); đổi sang dấu chấm phẩy (;) nếu Excel của bạn cấu hình theo vùng miền khác.
Cú pháp: không cần tham số
=NA()
Hàm này không nhận tham số nào, luôn trả về đúng lỗi #N/A. Nghe vô dụng nếu chỉ nhìn một mình — giá trị thật của nó lộ ra khi đặt cạnh một biểu đồ.
Vấn đề: số 0 và ô trống khiến biểu đồ vẽ sai
Giả sử một bảng dự báo doanh thu 6 tháng, nhưng mới có dữ liệu thật của 4 tháng đầu, hai tháng cuối chưa tới nên chưa có số.

Để trống hai ô cuối, biểu đồ đường Excel thường tự nối liền hai điểm hai bên khoảng trống — nhưng hành vi này không phải lúc nào cũng nhất quán giữa các phiên bản, và với biểu đồ cột, ô trống có thể bị vẽ thành cột cao bằng 0, gây hiểu lầm nghiêm trọng: nhìn vào biểu đồ tưởng doanh thu tháng đó sụt về 0, trong khi sự thật là chưa có dữ liệu.

Điền số 0 vào hai ô đó để "cho gọn" còn tệ hơn: biểu đồ giờ vẽ đúng theo số liệu đưa vào, và số liệu đó nói dối — trông như doanh thu giảm mạnh về 0, một kết luận hoàn toàn sai với thực tế "chưa thu thập được số liệu".
NA() — cách đúng để báo "chưa có dữ liệu" cho biểu đồ
=NA()
Đặt NA() vào hai ô chưa có dữ liệu thay vì để trống hoặc điền 0. Excel có quy tắc riêng cho giá trị lỗi #N/A khi vẽ biểu đồ đường: nó bỏ qua hẳn điểm đó, khiến đường biểu đồ có một khoảng đứt thật sự tại đúng vị trí thiếu dữ liệu — không nối liền giả tạo, không tụt về 0 sai lệch.

Đây là hành vi được thiết kế có chủ đích của Excel — #N/A là loại lỗi duy nhất được biểu đồ xử lý theo cách "bỏ qua điểm này" thay vì "vẽ như một giá trị", chính vì ý nghĩa "not available" (không có sẵn) của nó khớp hoàn toàn với ý định "chưa có dữ liệu tại đây".
Ứng dụng: kết hợp với công thức để tự động chuyển sang NA khi chưa có dữ liệu
Thay vì gõ tay NA() vào từng ô, thường tiện hơn khi để công thức tự quyết định lúc nào dùng NA() dựa trên điều kiện khác, ví dụ so sánh với ngày hiện tại:
=IF(A2 > TODAY(), NA(), B2)
Với A2 là ngày của tháng đang xét, công thức tự kiểm tra: nếu ngày đó còn ở tương lai (chưa tới), trả về NA() để biểu đồ bỏ qua; nếu đã qua, lấy đúng giá trị B2 đã có. Bảng dữ liệu tự cập nhật đúng theo thời gian trôi qua mà không cần sửa tay mỗi tháng.
Đừng để NA() lọt ra ngoài các phép tính khác
Một điều cần cẩn thận: nếu cùng cột dữ liệu chứa NA() còn được dùng cho các phép tính khác — tổng doanh thu cả năm bằng SUM, ví dụ — lỗi #N/A sẽ lan ra làm cả phép SUM đó cũng báo lỗi, vì hầu hết các hàm tính toán không tự bỏ qua lỗi. Muốn vừa dùng NA() cho biểu đồ vừa tính tổng đúng ở chỗ khác, cần bọc thêm IFERROR hoặc SUM kết hợp IFERROR ở công thức tính tổng, để lỗi cố ý này không phá hỏng những phép tính không liên quan tới biểu đồ.
Tổng kết
NA() cố tình tạo ra lỗi #N/A, và đây là cách đúng để báo cho Excel biết một điểm dữ liệu "chưa có sẵn" — khác hẳn về ý nghĩa với ô trống hay số 0. Ứng dụng thực tế quan trọng nhất là trong biểu đồ đường: #N/A là loại lỗi duy nhất khiến Excel bỏ qua hẳn điểm đó thay vì vẽ sai thành 0 hoặc nối liền giả tạo.
Đọc tiếp trong cùng cụm bài: ERROR.TYPE — trả về mã số cho biết chính xác loại lỗi nào đang xảy ra.
Mục lục
Muốn làm chủ Excel?
Tham gia khóa học E-Learning của Trà Đá Data để được hướng dẫn chi tiết từ A-Z với Case Study thực tế.
Tìm hiểu ngayBài viết liên quan
Khám phá thêm các bài viết cùng chủ đề
ROW và COLUMN: lấy số thứ tự hàng/cột, đánh số tự động không lệ thuộc dòng thật
ROW và COLUMN trả về số thứ tự hàng/cột của một ô, dùng để đánh số thứ tự tự động không bị lệch khi chèn hoặc xoá dòng — việc kéo số tay không làm được.
N và T: ép giá trị về số hoặc văn bản một cách im lặng, không báo lỗi
N và T là hai hàm ép kiểu dữ liệu 'hiền' nhất trong Excel: không báo lỗi khi không ép được, chỉ lặng lẽ trả về 0 hoặc chuỗi rỗng — khác hẳn VALUE báo lỗi #VALUE! khi thất bại.
ISREF: kiểm tra một tên có đang trỏ tới tham chiếu thật hay chỉ là một giá trị
ISREF phân biệt một tên đã đặt (Named Range) đang trỏ tới một vùng ô thật, hay chỉ đang lưu một con số cố định — hai thứ dễ lẫn khi quản lý nhiều tên trong một file lớn.
Bình luận
Đăng nhập để tham gia bình luận
Đăng nhậpNhận bài viết mới nhất
Đăng ký để nhận thông báo khi có bài viết mới. Không spam, chỉ kiến thức chất lượng.