Hướng dẫn cách sửa lỗi #NA khi dùng hàm vlookup tìm tên tài khoản trong sổ cái Excel

Khi chúng ta làm kế toán trên Excel, cụ thể là trong Sổ cái, chúng ta rất hay gặp 1 lỗi đó là hàm VLOOKUP ra kết quả #NA dù công thức đã đúng. Tại sao lại như vậy? Hãy cùng Học Excel Online tìm hiểu qua bài viết này nhé.

Ví dụ về lỗi hàm vlookup trên sổ cái dù công thức đã viết đúng cú pháp

Nguyên nhân của lỗi #NA trong hàm VLOOKUP

Lỗi #NA có nghĩa là Not Avaiable = không tìm thấy. Vậy cụ thể ở đây không tìm thấy cái gì? Bài viết sau đây sẽ giải thích rõ hơn về lỗi này khi sử dụng trong hàm VLOOKUP:

Tìm hiểu về lỗi #N/A trong Excel và cách khắc phục

Trong danh mục tài khoản ta thường tổ chức dạng như sau:

Trong đó cột Tài khoản chứa các dữ liệu ở dạng TEXT chứ không phải dạng SỐ

Trong khi đó tại Sổ cái, dữ liệu ở ô I1 (ô có chứa số tài khoản) lại chứa dữ liệu dạng SỐ

Điều này dẫn tới Excel hiểu rằng 2 nội dung này là khác nhau. Giá trị ở I1 không có trong danh mục tài khoản (Số 111 khác với đoạn text 111) => Do đó không tìm thấy giá trị cần tham chiếu => Trả về lỗi #NA.

Cách khắc phục lỗi #NA khi tra cứu tên tài khoản trong sổ cái

Để khắc phục lỗi này, giải pháp đưa ra có 2 hướng:

  • Hướng thứ 1: Chuyển toàn bộ dữ liệu trong Danh mục tài khoản về dạng Number
  • Hướng thứ 2: Chuyển dữ liệu tại ô I1 về dạng Text

Có thể thấy hướng thứ 2 thực hiện đơn giản hơn nhiều, khi chúng ta chỉ phải thay đổi dữ liệu duy nhất 1 ô. Nhưng việc này lại có 1 vấn đề như sau:

Tại ô I1 áp dụng Data Validation để tạo danh sách chọn số tài khoản.

Dữ liệu nguồn cho danh sách này lại chứa dữ liệu dạng SỐ. Do đó nếu như chúng ta muốn thay đổi loại dữ liệu của ô I1 thì phải thay đổi từ nguồn nạp vào, chứ không phải thay đổi Format Cells/ Text tại ô I1.

Bản chất vấn đề là vậy, nhưng chúng ta hoàn toàn có thể tùy biến giá trị tham chiếu I1 trong hàm VLOOKUP để khắc phục lỗi này một cách rất đơn giản. Cách làm như sau:

Mục tiêu: Chuyển giá trị I1 từ dạng số về dạng text

Hàm sử dụng: Hàm LEFT (hoặc hàm RIGHT đều được)

Hàm này có tác dụng lấy một phần hoặc toàn bộ giá trị bên trong 1 chuỗi văn bản/ 1 dãy số để trả về dữ liệu là dạng TEXT.

Để lấy toàn bộ độ dài số ký tự trong 1 ô, chúng ta dùng hàm LEN để đo độ dài số ký tự.

Khi đó công thức chuyển đổi loại dữ liệu ô I1 về dạng Text được viết như sau:

=LEFT(I1,LEN(I1))

Thay công thức này cho giá trị I1 trong hàm VLOOKUP, chúng ta có:

=VLOOKUP(LEFT(I1,LEN(I1)),DM_TK!$A$5:$E$315,5,0)

Kết quả thu được như sau:

Kết quả đã được khắc phục đúng rồi. Chúc các bạn áp dụng thành công!

Tham khảo thêm các bài viết:

Hướng dẫn cách lập công thức lấy dữ liệu từ Nhật ký chung sang Sổ cái Excel

Hướng dẫn cách tự động cập nhật sổ cái trong Excel với VBA

Hướng dẫn cách tạo mẫu Sổ cái trên Excel cực kỳ đơn giản

Hướng dẫn cách tạo danh sách chọn tài khoản Sổ cái trong Excel