Menu

Error #N/A di Excel: Cara Mengatasi VLOOKUP dan XLOOKUP

#N/A berarti lookup tidak menemukan nilai yang dicarinya. Periksa salah ketik, spasi berlebih, dan rentang tabel yang bergeser saat rumus disalin ke bawah, lalu pakai IFNA untuk menampilkan pesan bagi nilai yang memang tidak ada.

Setiap lembar kerja di halaman ini interaktif: ubah angka atau rumus, dan hasilnya langsung dihitung ulang.

#N/A berarti "not available" (tidak tersedia): lookup seperti VLOOKUP, XLOOKUP atau MATCH tidak menemukan nilai yang dicarinya. Di bawah ini, =VLOOKUP(E2,A2:B6,2,FALSE) menghasilkan #N/A karena Kiwi tidak ada di daftar. Ubah E2 menjadi Pear, maka hasilnya 1.5.

Mencari produk yang tidak ada
F2
ABCDEF
1ProductPriceLook forPrice
2Apple1.2Kiwi#N/A
3Pear1.5
4Plum0.8
5Bread2.4
6Milk1.1
#N/A Nilai yang kamu cari tidak ada di rentang pencarian.

Kalau nilainya memang tidak ada, #N/A adalah jawaban yang benar, dan IFNA (di bawah) mengubahnya menjadi pesan. Kasus yang perlu diperbaiki adalah ketika nilainya ada tapi lookup tetap gagal. Excel dalam beberapa bahasa menampilkan error ini dengan namanya sendiri, seperti #NV dalam bahasa Jerman, #N/D dalam bahasa Portugis dan Italia, #Н/Д dalam bahasa Rusia dan #YOK dalam bahasa Turki; semuanya error yang sama.

#N/A setelah lookup disalin ke bawah

Penyebab paling umum di sheet sungguhan: rumusnya berfungsi di baris pertama, tapi beberapa baris di bawahnya menampilkan #N/A padahal produknya ada di daftar.

Rentang tabel tanpa $
F4
ABCDEF
1ProductPriceOrderPrice
2Apple1.2Apple1.2
3Pear1.5Plum0.8
4Plum0.8Pear#N/A
5Bread2.4Milk1.1
6Milk1.1Apple#N/A
#N/A Nilai yang kamu cari tidak ada di rentang pencarian.

Klik F4: rentang tabelnya A4:B8, dua baris lebih rendah dari rentang di F2. Menyalin rumus ke bawah ikut menggeser rentangnya, sehingga Pear (baris 3) dan Apple (baris 2) keluar dari rentang. F3 dan F5 berfungsi hanya karena Plum dan Milk masih ada di dalam rentangnya. Klik F2 lalu ubah rentangnya menjadi $A$2:$B$6: seluruh kolom ikut berubah dan setiap harga muncul. Tanda $ mengunci rentang, lihat referensi absolut.

#N/A karena spasi berlebih

"Pear " dengan spasi di akhir dan "Pear" adalah dua nilai yang berbeda bagi Excel. Spasi bisa berasal dari data yang diketik manual, disalin dari halaman web, atau diekspor dari sistem lain, dan spasi itu tidak terlihat di sel.

Spasi di akhir pada tabel
E2
ABCDEF
1ProductPriceLook forPriceLength of A2
2Pear 1.5Pear#N/A5
3Apple1.2
4Plum0.8
#N/A Nilai yang kamu cari tidak ada di rentang pencarian.

E2 menghasilkan #N/A. F2 menunjukkan penyebabnya: Pear terdiri dari 4 huruf, tapi A2 panjangnya 5 karakter. Hapus spasi di A2, maka lookup-nya berfungsi. Tiga cara memperbaikinya secara permanen:

  • Bersihkan kolomnya: taruh =TRIM(A2) di kolom bantu, salin ke bawah, lalu salin hasilnya dan pakai Home > Paste > Values di atas data aslinya.
  • Rapikan nilai yang dicari kalau spasinya ada di yang kamu ketik: =VLOOKUP(TRIM(D2),A2:B4,2,FALSE).
  • Rapikan seluruh kolom lookup di dalam rumus (Excel 2021 atau Microsoft 365): =XLOOKUP(D2,TRIM(A2:A4),B2:B4).

Teks yang ditempel dari halaman web bisa berisi non-breaking space, yang tidak dihapus oleh TRIM. Halaman TRIM menunjukkan cara menggantinya dengan SUBSTITUTE(A2,CHAR(160)," ").

#N/A ketika nilainya tidak ada di kolom pertama

VLOOKUP hanya mencari di kolom pertama rentangnya dan mengembalikan kolom di sebelah kanannya. Mencari nilai dari kolom lain menghasilkan #N/A, bahkan ketika nilai itu ada di tabel.

Mencari berdasarkan kode
F2
ABCDEFG
1ProductCodePriceCodeVLOOKUPXLOOKUP
2AppleA-171.2P-22#N/APear
3PearP-221.5
4PlumP-310.8
5BreadB-052.4
6MilkM-401.1
#N/A Nilai yang kamu cari tidak ada di rentang pencarian.

Kodenya ada di kolom B, jadi VLOOKUP pada A2:C6 mencari P-22 di antara nama produk dan gagal. VLOOKUP juga tidak bisa mengembalikan nama produk, yang letaknya sebelum kolom kode. XLOOKUP menerima kolom lookup dan kolom hasil secara terpisah, dan menemukan Pear. Di Excel 2019 dan versi lebih lama, =INDEX(A2:A6,MATCH(E2,B2:B6,0)) melakukan hal yang sama.

#N/A karena angka disimpan sebagai teks

Nomor pesanan yang diketik sebagai teks ('1001, atau diimpor dari CSV) tidak pernah cocok dengan angka 1001, dan begitu juga sebaliknya. Kedua sel menampilkan 1001, jadi masalah ini sulit dilihat. Di Excel:

A2:B6 holds order numbers stored as text, E2 holds the number 1001
=VLOOKUP(E2,A2:B6,2,FALSE)          #N/A
=VLOOKUP(E2&"",A2:B6,2,FALSE)       found: E2&"" turns the number into text

A2:B6 holds real numbers, E2 holds "1001" as text
=VLOOKUP(E2,A2:B6,2,FALSE)          #N/A
=VLOOKUP(--E2,A2:B6,2,FALSE)        found: -- turns the text into a number

=ISTEXT(A2) memberi tahu sisi mana yang berupa teks, dan segitiga hijau kecil di sudut sel menandai angka yang disimpan sebagai teks. Untuk mengubah satu kolom penuh, lihat teks menjadi angka.

IFNA atau IFERROR: tampilkan pesan kalau tidak ada yang ditemukan

Kalau sebuah nilai memang wajar tidak ada, tampilkan sesuatu yang lebih berguna daripada #N/A. Pakai IFNA, bukan IFERROR:

IFNA vs IFERROR pada lookup yang rusak
F2
ABCDEFG
1ProductPriceLook forIFNAIFERROR
2Apple1.2Pear#REF!Not found
3Pear1.5
4Plum0.8
5Bread2.4
6Milk1.1
#REF! Rumus merujuk ke sel yang tidak ada.

Kedua rumus meminta kolom 3 dari rentang dua kolom, sebuah kesalahan. IFNA membiarkan #REF! lolos, jadi kamu bisa melihat bug-nya. IFERROR menyembunyikannya dan menampilkan "Not found" untuk Pear, padahal Pear ada di daftar. Ubah kedua angka 3 menjadi 2: sekarang masing-masing menampilkan 1.5, dan dengan E2 diisi Kiwi, masing-masing menampilkan "Not found". XLOOKUP sudah punya pesan bawaan: =XLOOKUP(E2,A2:A6,B2:B6,"Not found"). Perbedaannya dijelaskan lebih lanjut di IFERROR.

Perbaiki lookup yang rusak karena spasi

Temukan harganya meski ada spasi
F2
ABCDEF
1ProductPriceLook forPrice
2Apple 1.2Plum
3Pear 1.5
4Plum 0.8
5Bread 2.4
6Milk 1.1
Klik sel untuk melihat rumusnya. Ubah angka atau rumus, dan lembar kerja langsung menghitung ulang.

Giliranmu: Setiap produk di daftar diimpor dengan spasi di akhir, jadi =VLOOKUP(E2,A2:B6,2,FALSE) menghasilkan #N/A. Tulis rumus di F2 yang tetap mengembalikan harga produk di E2.

=XLOOKUP(E2,TRIM(A2:A6),B2:B6) merapikan daftarnya di dalam rumus. =VLOOKUP(E2&" ",A2:B6,2,FALSE) juga berfungsi di sini, tapi hanya selama setiap produk punya tepat satu spasi di akhir; membersihkan kolomnya dengan TRIM adalah perbaikan yang tahan lama.

Pertanyaan yang sering diajukan

Apa arti #N/A di Excel?

N/A singkatan dari "not available" (tidak tersedia). Artinya fungsi lookup (VLOOKUP, HLOOKUP, XLOOKUP, MATCH, XMATCH) tidak bisa menemukan nilai yang diberikan. =NA() juga sengaja menghasilkannya, misalnya supaya grafik melewati sebuah titik alih-alih menggambarnya sebagai 0.

Kenapa VLOOKUP menghasilkan #N/A padahal nilainya ada?

Kedua nilai itu tidak benar-benar sama. Penyebab umumnya: ada spasi di akhir salah satunya, angka disimpan sebagai teks di satu tempat dan sebagai angka di tempat lain, atau rentang tabel tanpa $ yang ikut bergeser ke bawah saat rumus disalin, sehingga baris berisi nilai itu tidak lagi ada di dalamnya.

Kenapa VLOOKUP menghasilkan #N/A di sebagian baris saja?

Rentang tabelnya tidak dikunci sebelum rumus disalin ke bawah, jadi di setiap baris rentangnya dimulai satu baris lebih rendah: A2:B6 di baris pertama menjadi A4:B8 dua baris kemudian, dan nilai di atas rentang tidak lagi ditemukan. Kunci dengan $: =VLOOKUP(E2,$A$2:$B$6,2,FALSE).

Kenapa XLOOKUP menghasilkan #N/A?

Nilainya tidak ada di lookup array, atau berbeda karena spasi atau karena berupa teks, bukan angka. Secara bawaan XLOOKUP mencari nilai yang sama persis, jadi nilai yang mirip tidak diterima. Argumen keempatnya menggantikan error itu: =XLOOKUP(E2,A2:A6,B2:B6,"Not found").

Kenapa MATCH menghasilkan #N/A?

Dengan match type 0, nilainya tidak ada di rentang, sama seperti VLOOKUP. Dengan match type 1 atau tanpa argumen itu, rentangnya harus diurutkan naik dan nilainya tidak boleh lebih kecil dari item pertamanya; pakai =MATCH(E2,A2:A6,0) untuk pencocokan yang sama persis.

Ilustrasi bahasa pemrograman di Coddy

Belajar coding dengan Coddy

Mulai