Chào các anh chị em trong diễn đàn,
Trong quá trình làm việc với Excel, đặc biệt là các file kế toán có nhiều dữ liệu nhập tay, mình hay gặp phải lỗi #VALUE! khi thực hiện các phép tính. Nguyên nhân thường là do trong một cột số liệu lại lẫn một vài ô chứa ký tự văn bản (ví dụ: số điện thoại, mã hàng có chữ, hoặc đơn giản là người dùng gõ nhầm).
Việc lọc thủ công từng ô rất mất thời gian, đặc biệt với file dung lượng lớn. Hôm nay, mình chia sẻ một mẹo nhỏ để xử lý nhanh gọn vấn đề này.
Cách 1: Sử dụng hàm IFERROR kết hợp với VALUE
Giả sử cột dữ liệu của bạn là cột B, bắt đầu từ B2. Bạn có thể dùng công thức mảng (nhập Ctrl+Shift+Enter) hoặc đơn giản là áp dụng cho từng ô rồi kéo xuống:
=IFERROR(VALUE(B2)*1, 0)Giải thích:
VALUE(B2): Cố gắng chuyển đổi nội dung ô B2 thành số. Nếu là văn bản không chuyển đổi được, nó sẽ báo lỗi.*1: Nhân với 1 để đảm bảo kết quả là số. NếuVALUE(B2)trả về số, phép nhân này không ảnh hưởng. NếuVALUE(B2)lỗi,*1cũng sẽ lỗi.IFERROR(..., 0): Nếu phép tính trên báo lỗi (do B2 là văn bản không chuyển đổi được), nó sẽ trả về 0. Nếu không lỗi, nó trả về giá trị số đã chuyển đổi.
Cách 2: Sử dụng Text to Columns (chuyển đổi nhanh)
Đây là cách mình hay dùng nhất vì nó xử lý trực tiếp trên cột dữ liệu:
- Chọn toàn bộ cột chứa dữ liệu bạn nghi ngờ có lẫn văn bản.
- Vào tab Data -> Text to Columns.
- Chọn Delimited (hoặc Fixed width tùy trường hợp, nhưng Delimited thường phổ biến hơn). Nhấn Next.
- Bỏ chọn hết các dấu phân cách (Tab, Semicolon, Comma, Space, Other) rồi nhấn Next.
- Ở bước cuối cùng, chọn General làm định dạng cột. Quan trọng là nhấn nút Finish.
Thao tác này sẽ ép Excel nhận diện lại dữ liệu trong cột. Những ô nào có thể là số sẽ được chuyển thành số. Những ô còn lại là văn bản