Mỗi thứ Hai, tôi dành toàn bộ buổi sáng để kiểm tra bảng dữ liệu nhân viên. Cuộn từ ô này sang ô khác, tìm những con số bị nhập nhầm thành chữ, những mã số bị thêm khoảng trắng. Mười lần một lần, báo cáo lương tháng bị sai vì ô lương cơ bản chứa “5000000 ” thay vì số thực. Hàm tổng không chạy, công thức báo lỗi, và tôi phải tìm thủ công trong 800 dòng.

Hàm ISNONTEXT kiểm tra kiểu dữ liệu tức thì
Hàm ISNONTEXT thuộc nhóm hàm thông tin trong Excel, trả về kết quả đúng hoặc sai để xác định một ô có phải dạng văn bản hay không.
Cú pháp:
=ISNONTEXT(giá_trị)
Tham số duy nhất là ô hoặc giá trị cần kiểm tra. Hàm trả về ĐÚNG nếu không phải văn bản, nghĩa là số, ngày tháng, giá trị lỗi, hoặc ô trống. Trả về SAI nếu là văn bản.
Ví dụ cơ bản:
=ISNONTEXT(A1)với ô A1 chứa số 100 → Kết quả: ĐÚNG=ISNONTEXT(A2)với ô A2 chứa chữ “100” → Kết quả: SAI=ISNONTEXT(A3)với ô A3 trống → Kết quả: ĐÚNG
Điểm mấu chốt là hàm phân biệt được số 100 và chữ “100” dù nhìn bằng mắt giống hệt nhau. Excel lưu chúng khác nhau về mặt kỹ thuật, và ISNONTEXT bắt được sự khác biệt đó ngay lập tức.
Phát hiện dữ liệu nhập sai trong cột số
Trường hợp phổ biến nhất tôi dùng ISNONTEXT là kiểm tra cột lương hoặc doanh số có ô nào bị nhập thành chữ không.
Các bước thực hiện:
- Tạo cột phụ bên cạnh cột cần kiểm tra
- Nhập công thức
=ISNONTEXT(B2)tại ô C2 (giả sử cột B là cột lương) - Kéo công thức xuống hết bảng dữ liệu
Nếu ô nào trong cột lương trả về SAI, nghĩa là ô đó chứa văn bản chứ không phải số. Tôi lọc cột kết quả theo giá trị SAI, tìm ra ngay những dòng có vấn đề.
Trước đây tôi cuộn từng màn hình, nhìn từng ô, mất 40 phút cho 800 dòng. Giờ đây 5 giây có kết quả, lọc xong trong 10 giây nữa.
Kết hợp với hàm NẾU để cảnh báo tự động
Thay vì chỉ hiện ĐÚNG hoặc SAI, tôi dùng ISNONTEXT kết hợp hàm NẾU để hiện thông báo dễ hiểu hơn.
Công thức cải tiến:
=NẾU(ISNONTEXT(B2);"Hợp lệ";"Lỗi: Dữ liệu dạng chữ")
Cột kiểm tra giờ hiện “Hợp lệ” cho ô đúng định dạng và “Lỗi: Dữ liệu dạng chữ” cho ô sai. Người nhập liệu nhìn vào biết ngay phải sửa gì, không cần hỏi tôi từng dòng một.
Nâng cao thêm với định dạng có điều kiện:
- Chọn cột cần kiểm tra (ví dụ B2:B800)
- Vào menu Trang chủ > Định dạng có điều kiện > Quy tắc mới
- Chọn “Sử dụng công thức để xác định ô cần định dạng”
- Nhập công thức:
=KHÔNG.PHẢI.TEXT(B2)=SAI - Chọn định dạng nền đỏ hoặc chữ đỏ
Ô nào chứa chữ sẽ tự động bật màu đỏ. Không cần cột phụ, không cần lọc, nhìn thẳng vào bảng đã thấy lỗi ở đâu.
Validate biểu mẫu nhập liệu ngay khi gõ
Tôi tạo biểu mẫu nhập thông tin nhân viên mới với các ô: Mã nhân viên, Lương cơ bản, Hệ số. Người dùng đôi khi gõ nhầm chữ vào ô số.
Cách thiết lập kiểm tra dữ liệu:
- Chọn ô cần validate (ví dụ C5 – ô Lương cơ bản)
- Vào menu Dữ liệu > Kiểm tra dữ liệu
- Trong tab Cài đặt, chọn Cho phép: Tùy chỉnh
- Nhập công thức:
=ISNONTEXT(C5) - Trong tab Thông báo lỗi, nhập: “Vui lòng nhập số, không nhập chữ”
Giờ nếu ai đó gõ “năm triệu” thay vì 5000000, Excel từ chối ngay và hiện thông báo. Dữ liệu vào sạch từ đầu, tôi không phải dọn dẹp sau.
Phương pháp này giảm 90 phần trăm lỗi nhập liệu trong biểu mẫu của tôi. Trước kia 15 dòng trên 100 có vấn đề, giờ chỉ còn 1 đến 2 dòng do người dùng tắt bỏ cảnh báo.
Khác biệt giữa ISNONTEXT và các hàm tương tự
Nhóm hàm kiểm tra thông tin của Excel có ba hàm liên quan mà người dùng dễ nhầm lẫn: ISNONTEXT, ISTEXT, và ISNUMBER.
ISTEXT:
- Kiểm tra có phải văn bản không
- Trả về ĐÚNG nếu là văn bản, SAI nếu không phải
- Ngược hoàn toàn với ISNONTEXT
ISNUMBER:
- Kiểm tra có phải số không
- Trả về ĐÚNG nếu là số, SAI nếu không phải
- Không tính ô trống hoặc lỗi là số
So sánh với ví dụ cụ thể:
| Giá trị trong ô | ISNONTEXT | ISTEXT | ISNUMBER |
|---|---|---|---|
| 100 | ĐÚNG | SAI | ĐÚNG |
| “100” | SAI | ĐÚNG | SAI |
| Ô trống | ĐÚNG | SAI | SAI |
| #DIV/0! | ĐÚNG | SAI | SAI |
Lưu ý quan trọng: ISNONTEXT trả về ĐÚNG cho cả ô trống và lỗi. Nếu muốn kiểm tra riêng số, dùng ISNUMBER chính xác hơn. Nếu chỉ muốn biết “không phải chữ”, dùng ISNONTEXT.
Tôi dùng ISNONTEXT khi mục đích là loại bỏ dữ liệu dạng chữ, không quan tâm giá trị còn lại là gì. Dùng ISNUMBER khi cần chắc chắn ô đó chứa số để tính toán.
Kết hợp ISNONTEXT với SUM để bỏ qua lỗi
Có lúc bảng tính chứa vài ô lỗi hoặc ghi chú dạng chữ xen giữa cột số. Hàm TỔNG bỏ qua chữ tự động, nhưng nếu muốn đếm xem có bao nhiêu ô hợp lệ, tôi dùng công thức mảng.
Đếm ô không phải văn bản trong vùng:
=TỔNG(NẾU(ISNONTEXT(A1:A100);1;0))
Nhập công thức này xong, nhấn Ctrl+Shift+Enter để biến thành công thức mảng. Excel sẽ tự thêm dấu ngoặc nhọn {} bao quanh.
Công thức kiểm tra từng ô trong vùng A1:A100, gán giá trị 1 nếu không phải chữ, 0 nếu là chữ, rồi cộng tổng lại. Kết quả cho biết có bao nhiêu ô chứa số, ngày tháng, hoặc ô trống.
Kết quả sau hai tuần sử dụng
Thời gian kiểm tra dữ liệu giảm từ 3 giờ xuống 20 phút mỗi tuần. Hầu hết là thời gian sửa lỗi chứ không phải tìm lỗi. Báo cáo lương tháng chạy đúng từ lần đầu thay vì phải sửa 3 đến 4 lần như trước.
Hàm ISNONTEXT hoạt động trên Excel 2007 trở về sau, bao gồm Excel 2010, 2013, 2016, 2019, và Microsoft 365. Không cần bật tính năng gì thêm, gõ công thức vào là chạy ngay.
Nếu bảng dữ liệu của bạn thường xuyên nhận đầu vào từ nhiều người, thiết lập kiểm tra dữ liệu với ISNONTEXT từ đầu. Ba mươi giây cài đặt sẽ tiết kiệm hàng giờ đồng hồ sau này.
