Rumus Excel · Pencarian

Rumus Excel VLOOKUP: Cara Mencari dan Mengambil Data dari Tabel

Diperbarui

Dicocokkan dengan bantuan resmi, (Microsoft Excel untuk Microsoft 365, Excel 2024, Excel 2021, Excel 2019, Excel 2016). Belum dicoba di perangkat kami. Sumber · Apa artinya?
Setelan Excel:

Jawaban cepat

Rumus Excel VLOOKUP ditulis =VLOOKUP(nilai_dicari, tabel, nomor_kolom, FALSE), misalnya =VLOOKUP("B03",A2:C5,3,FALSE). Excel mencari nilai di kolom paling kiri tabel, lalu mengambil isi kolom ke-3 di baris yang sama. Pakai FALSE untuk kecocokan persis.

Daftar isi

Sintaks VLOOKUP

Sintaks

=VLOOKUP(lookup_value; table_array; col_index_num; [range_lookup])=VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])

Berlaku di: Excel untuk Microsoft 365, Excel untuk Microsoft 365 untuk Mac, Excel 2024, Excel 2024 untuk Mac, Excel 2021, Excel 2021 untuk Mac, Excel 2019, Excel 2016

Pemisah argumen mengikuti setelan regional: Excel dengan setelan Indonesia biasanya memakai titik koma (;), setelan Inggris memakai koma (,). Kalau rumus ditolak, ganti pemisahnya lewat tombol Setelan Excel di atas (Microsoft Support).

Argumen VLOOKUP
ArgumenPenjelasan
lookup_valueWajibNilai yang dicari. Nilai ini harus berada di kolom pertama table_array, dan bisa berupa nilai atau referensi sel.
table_arrayWajibRentang sel tempat VLOOKUP mencari lookup_value dan nilai yang dikembalikan. Kolom pertamanya harus berisi lookup_value.
col_index_numWajibNomor kolom yang berisi nilai yang dikembalikan, dihitung mulai 1 dari kolom paling kiri table_array.
range_lookupOpsionalFALSE (atau 0) untuk kecocokan persis; TRUE (atau 1) untuk perkiraan kecocokan. Jika dikosongkan, Excel memakai TRUE.

Contoh penggunaan

Contoh 1: Mencari harga berdasarkan kode barang

Data contoh 1 (huruf kolom dan nomor baris seperti di Excel)
BarisABC
1KodeBarangHarga
2B01Pulpen3.5003,500
3B02Buku tulis6.0006,000
4B03Penggaris4.0004,000
5B04Penghapus2.5002,500
Rumus
=VLOOKUP("B03";A2:C5;3;FALSE)=VLOOKUP("B03",A2:C5,3,FALSE)
Hasil
4.0004,000

VLOOKUP menemukan B03 di kolom pertama (A4), lalu mengambil isi kolom ke-3 di baris itu, yaitu harga 4.000.

Contoh 2: Mengambil nama barang

Data contoh 2 (huruf kolom dan nomor baris seperti di Excel)
BarisABC
1KodeBarangHarga
2B01Pulpen3.5003,500
3B02Buku tulis6.0006,000
4B03Penggaris4.0004,000
5B04Penghapus2.5002,500
Rumus
=VLOOKUP("B02";A2:C5;2;FALSE)=VLOOKUP("B02",A2:C5,2,FALSE)
Hasil
Buku tulis

Nomor kolom 2 berarti kolom kedua tabel (Barang), jadi hasilnya nama barang untuk kode B02.

Contoh 3: Kode yang tidak ada di tabel

Data contoh 3 (huruf kolom dan nomor baris seperti di Excel)
BarisABC
1KodeBarangHarga
2B01Pulpen3.5003,500
3B02Buku tulis6.0006,000
4B03Penggaris4.0004,000
5B04Penghapus2.5002,500
Rumus
=VLOOKUP("B09";A2:C5;3;FALSE)=VLOOKUP("B09",A2:C5,3,FALSE)
Hasil
#N/A

Dengan FALSE, #N/A berarti nilai persisnya tidak ditemukan. B09 tidak ada di kolom Kode.

Contoh 4: Menyembunyikan #N/A dengan IFERROR

Data contoh 4 (huruf kolom dan nomor baris seperti di Excel)
BarisABC
1KodeBarangHarga
2B01Pulpen3.5003,500
3B02Buku tulis6.0006,000
4B03Penggaris4.0004,000
5B04Penghapus2.5002,500
Rumus
=IFERROR(VLOOKUP("B09";A2:C5;3;FALSE);"Tidak ditemukan")=IFERROR(VLOOKUP("B09",A2:C5,3,FALSE),"Tidak ditemukan")
Hasil
Tidak ditemukan

IFERROR menangkap kesalahan #N/A dari VLOOKUP dan menampilkan teks penggantinya.

Contoh 5: Perkiraan kecocokan untuk tabel bertingkat

Data contoh 5 (huruf kolom dan nomor baris seperti di Excel)
BarisAB
1Belanja minimalDiskon
200%
3100.000100,0005%
4500.000500,00010%
Rumus
=VLOOKUP(250000;A2:B4;2;TRUE)=VLOOKUP(250000,A2:B4,2,TRUE)
Hasil
5%

Dengan TRUE, kolom pertama harus urut naik. 250.000 tidak ada persis di tabel, jadi VLOOKUP mencari nilai terdekat dan mengembalikan 5% dari baris 100.000.

Kesalahan umum

#N/A

Penyebab: Dengan FALSE, nilai persis yang dicari tidak ada. Dengan TRUE, nilai yang dicari lebih kecil dari nilai terkecil di kolom pertama.

Solusi: Pastikan nilai yang dicari ada di kolom pertama tabel dan tipenya sama (angka dengan angka), atau tangani dengan IFERROR.

#REF!

Penyebab: col_index_num lebih besar dari jumlah kolom di table_array.

Solusi: Hitung ulang nomor kolom mulai dari kolom paling kiri table_array, atau perlebar rentang tabelnya.

#NAME?

Penyebab: Teks yang dicari tidak diapit tanda kutip, misalnya nama orang ditulis langsung di rumus.

Solusi: Apit teks dengan tanda kutip, misalnya =VLOOKUP("Febriansyah",B2:E7,2,FALSE).

Nilai yang dikembalikan salah

Penyebab: range_lookup TRUE atau dikosongkan, tetapi kolom pertama tabel tidak diurutkan.

Solusi: Urutkan kolom pertama terlebih dahulu, atau pakai FALSE untuk kecocokan persis.

Pertanyaan umum

Kenapa VLOOKUP sebaiknya memakai FALSE?

FALSE (atau 0) membuat VLOOKUP mencari nilai yang persis sama. Jika argumen ini dikosongkan, Excel memakai TRUE (perkiraan kecocokan) yang mengharuskan kolom pertama diurutkan; kalau tidak urut, hasilnya bisa salah.

Apakah VLOOKUP bisa mengambil data dari kolom di sebelah kiri?

Tidak. Nilai yang dicari harus berada di kolom pertama (paling kiri) table_array, dan nilai yang diambil ada di sebelah kanannya. Untuk mencari ke segala arah, Microsoft menyarankan XLOOKUP.

Kenapa rentang tabel VLOOKUP sebaiknya memakai tanda $?

Referensi absolut seperti $A$2:$C$5 membuat rentang tabel tidak bergeser saat rumus disalin ke bawah, sehingga setiap baris tetap mencari di tabel yang sama.

Bagaimana mengganti #N/A dengan teks lain?

Bungkus VLOOKUP dengan IFERROR, misalnya =IFERROR(VLOOKUP(D2,A2:C5,3,FALSE),"Tidak ditemukan"). Microsoft menyarankan penanganan kesalahan seperti IFERROR bila nilai pencarian bisa tidak ada di data sumber.

Panduan terkait

Sumber

  1. Fungsi VLOOKUP (Microsoft Support)support.microsoft.com
  2. Cara memperbaiki kesalahan #N/A (Microsoft Support)support.microsoft.com