Teman Excel

Rumus dan trik spreadsheet untuk pekerjaan kantor, sekolah, dan usaha kecil

Teman Excel

Rumus dan trik spreadsheet untuk pekerjaan kantor, sekolah, dan usaha kecil

Rumus VLOOKUP di Excel: Cara Pakai dan Contoh Lengkap

Dian menunjuk layar laptop berisi dua tabel untuk rumus VLOOKUP di Excel

Untuk mengambil nama barang dari tabel harga, ketik =VLOOKUP(A2;Harga!$A$2:$D$9;2;FALSE). Kode barang harus berada di kolom paling kiri tabel sumber, karena VLOOKUP hanya membaca ke kanan. Argumen terakhir FALSE mencari kecocokan tepat, tetapi tidak membedakan huruf besar dan kecil.

Sintaks VLOOKUP dan arti keempat argumennya

Grid sel dengan kolom kiri tersorot dan garis menuju kolom di kanannya

Bentuk umum rumusnya seperti ini:

=VLOOKUP(lookup_value;table_array;col_index_num;range_lookup)

Argumen pertama, lookup_value (nilai yang dicari), adalah isi sel yang dicocokkan, misalnya kode barang di A2. Excel hanya membaca isi sel itu, bukan nama barangnya.

Lalu table_array (tabel): blok sel tempat data dicari. Blok ini harus memuat kolom kode di paling kiri dan kolom yang ingin diambil. Contoh di bawah memakai A2:D9, sehingga baris judul tidak ikut terbaca sebagai data.

Bagian col_index_num (nomor kolom) menunjuk urutan kolom di dalam tabel, bukan huruf kolom di lembar kerja. Angka 1 berarti kolom paling kiri, 2 kolom kedua, dan seterusnya.

Terakhir, range_lookup (pencarian rentang) menentukan cara mencocokkan. FALSE untuk pencocokan persis, TRUE untuk pencocokan perkiraan.

Versi: VLOOKUP tersedia di Excel 2016, 2019, 2021, 2024, 365, dan Excel web dengan cara penulisan yang sama. XLOOKUP tersedia di Excel 2021, 2024, 365, dan Excel web. Pemisah argumen mengikuti pengaturan regional atau pemisah daftar pada perangkat, bukan semata-mata bahasa antarmuka Excel. Regional Indonesia umumnya memakai titik koma (;), sedangkan regional Inggris atau AS memakai koma (,), sehingga rumusnya menjadi =VLOOKUP(A2,Harga!$A$2:$D$9,2,FALSE). Semua contoh di bawah memakai titik koma. Jika Excel Anda menampilkan nama fungsi lain, cari padanannya di daftar fungsi.

Argumen keempat: FALSE atau TRUE

FALSE mencari kecocokan persis. Jika kode tidak ditemukan, hasilnya #N/A, dan kesalahan itu langsung terlihat.

Pada pencocokan tepat, karakter * dan ? di dalam nilai pencarian teks dibaca sebagai wildcard. Kode "ATK-00?" misalnya bisa cocok dengan ATK-001. Untuk mencari tanda * atau ? apa adanya, tulis ~* atau ~? di nilai pencarian.

Jika argumen keempat dihapus, Excel memakai TRUE. Pada daftar barang, kode yang sedikit berbeda bisa memunculkan barang lain tanpa peringatan. Gunakan FALSE untuk kode, nomor identitas, atau nama yang harus cocok tepat; gunakan TRUE untuk mencari berdasarkan tabel batas yang diurutkan menaik.

Jika kode yang sama muncul dua kali di tabel, FALSE mengambil kecocokan pertama dari atas dan mengabaikan sisanya. VLOOKUP tidak menjumlahkan semua kecocokan. Untuk menjumlahkan, gunakan SUMIF.

Kenapa tabel dikunci dengan $

Alamat Harga!A2:D9 tanpa tanda dolar ikut bergeser saat rumus disalin ke bawah. Di baris berikutnya alamatnya menjadi Harga!A3:D10, sehingga baris 2 keluar dari tabel. Tanda $ membuat alamat tetap menjadi Harga!$A$2:$D$9. Cara tercepat memasangnya adalah memblok tabel lalu menekan F4.

Kunci $ tidak membuat tabel ikut melebar. Barang baru yang ditambahkan di A10:D10 tidak terbaca oleh $A$2:$D$9, jadi perbarui rentang di semua rumus, misalnya menjadi $A$2:$D$10. Untuk daftar harga yang terus bertambah, ubah menjadi Excel Table: blok A1:D9, tekan Ctrl + T, beri nama TabelHarga di tab Table Design, lalu tulis =VLOOKUP(A2;TabelHarga;2;FALSE). Tabel ini otomatis melebar saat baris baru diisi tepat di bawahnya. Letak menu bisa sedikit berbeda antarversi.

Contoh data: daftar harga di toko alat tulis

Dua tabel terhubung garis biru di meja dengan alat tulis

Toko alat tulis kecil menyimpan daftar barangnya di sheet bernama Harga. Setiap ada pembeli, kasir menulis kode dan jumlah barang di sheet Nota. Rumus VLOOKUP mengisi nama dan harga secara otomatis, sedangkan rumus perkalian menghitung subtotal.

Sheet Harga berisi tabel berikut, dengan judul kolom di baris 1 dan data di A2:D9.

Kode Nama barang Harga satuan Stok
ATK-001 Pulpen gel hitam 4.500 120
ATK-002 Pensil 2B 3.000 85
ATK-003 Penghapus putih 2.500 60
ATK-004 Buku tulis 58 lembar 5.000 200
ATK-005 Penggaris 30 cm 3.500 45
ATK-006 Lem kertas kecil 6.000 30
ATK-007 Map plastik 2.000 150
ATK-008 Stapler kecil 25.000 12

Sheet Nota berisi kode dan jumlah yang dibeli. Kolom nama, harga, dan subtotal masih kosong dan akan diisi rumus. Tabel ini memakai sel A1:E6.

Kode Jumlah Nama barang Harga satuan Subtotal
ATK-001 5
ATK-004 10
ATK-008 2
ATK-002 4
ATK-006 3

Harga pada tabel ini hanya contoh. Harga di toko Anda bisa berbeda.

Menulis rumus VLOOKUP langkah demi langkah

  1. Klik sel C2 di sheet Nota.
  2. Ketik =VLOOKUP(.
  3. Klik sel A2 yang berisi kode ATK-001.
  4. Ketik ;.
  5. Buka sheet Harga, blok sel A2:D9, lalu tekan F4 sampai alamatnya menjadi $A$2:$D$9.
  6. Ketik ;2;FALSE) lalu tekan Enter.

Sel C2 sekarang menampilkan Pulpen gel hitam. Rumus lengkapnya:

=VLOOKUP(A2;Harga!$A$2:$D$9;2;FALSE)

Di sebagian laptop, F4 harus ditekan bersama Fn. Jika tombol itu tidak mengubah alamat, tulis tanda $ secara manual.

Mengambil nama dan harga sekaligus

Kolom harga memakai rumus yang sama, hanya nomor kolomnya diganti menjadi 3. Tulis di sel D2:

=VLOOKUP(A2;Harga!$A$2:$D$9;3;FALSE)

Hasilnya 4.500. Kolom stok tidak dibutuhkan di nota, jadi nomor 4 tidak dipakai.

Setelah C2 dan D2 terisi, blok kedua sel itu, lalu tarik pegangan kecil di pojok kanan bawah sampai baris 6. Alamat A2 akan berubah mengikuti baris, sedangkan tabel tetap terkunci karena memakai $.

Menghitung total dari hasil VLOOKUP

Subtotal di kolom E dihitung dengan jumlah dikali harga. Di E2 tulis =B2*D2, lalu tarik ke E6. Harga dari VLOOKUP ikut dikalikan, sehingga subtotal tetap benar meskipun harga di sheet Harga berubah.

Letakkan total di E8 dengan =SUM(E2:E6). Setelah rumus nama, harga, dan subtotal disalin hingga baris 6, hasil nota adalah sebagai berikut.

Kode Jumlah Nama barang Harga satuan Subtotal
ATK-001 5 Pulpen gel hitam 4.500 22.500
ATK-004 10 Buku tulis 58 lembar 5.000 50.000
ATK-008 2 Stapler kecil 25.000 50.000
ATK-002 4 Pensil 2B 3.000 12.000
ATK-006 3 Lem kertas kecil 6.000 18.000

Cek manual: 22.500 + 50.000 + 50.000 + 12.000 + 18.000 = 152.500

Pencocokan perkiraan untuk rentang nilai

Guru sering perlu mengubah nilai ujian menjadi huruf mutu. Nilai 92 menjadi A, nilai 68 menjadi C. Daftar batas seperti ini tidak punya kecocokan persis, karena 68 tidak tertulis di tabel. Di sinilah TRUE dipakai.

Sheet Nilai memakai tabel siswa di A1:C6 dan tabel batas di E1:F6.

Nama siswa Nilai ujian Huruf mutu
Ratna Sari 92
Dimas Pratama 68
Sari Wulandari 85
Yoga Setiawan 39
Lestari Ningsih 70
Nilai minimum Huruf mutu
0 E
40 D
55 C
70 B
85 A

Tulis rumus di C2, lalu tarik ke C6:

=VLOOKUP(B2;$E$2:$F$6;2;TRUE)

TRUE mengambil hasil pada batas terbesar yang lebih kecil dari atau sama dengan nilai yang dicari; kolom batas wajib diurutkan menaik.

Nilai 92 jatuh pada batas 85, sehingga hurufnya A. Nilai 68 berada di antara 55 dan 70, sehingga hasilnya C. Nilai 39 menjadi E karena berada di antara 0 dan 40. Baris 0 berfungsi sebagai batas bawah, jadi nilai rendah tetap mendapat huruf.

Nama siswa Nilai ujian Huruf mutu
Ratna Sari 92 A
Dimas Pratama 68 C
Sari Wulandari 85 A
Yoga Setiawan 39 E
Lestari Ningsih 70 B

Nilai di bawah 0 menghasilkan #N/A karena tidak ada batas yang lebih kecil darinya. Nilai di atas 100 tetap mendapat A tanpa peringatan. Untuk mencegah itu, blok B2:B6, buka Data → Data Validation. Di tab Settings pilih Allow: Decimal, Data: between, Minimum 0, Maximum 100. Di tab Error Alert pilih Style: Stop, lalu klik OK. Validasi hanya membatasi ketikan baru. Nilai lama dan data hasil tempel bisa lolos, jadi periksa dengan Data → Data Validation → Circle Invalid Data.

Kesalahan bila tabel batas tidak berurutan

Pencocokan perkiraan mensyaratkan kolom batas diurutkan menaik. Jika batas disusun turun, misalnya 85, 70, 55, 40, 0, hasilnya dapat salah tanpa pesan error, atau justru menampilkan #N/A. Sebelum memakai TRUE, periksa urutan kolom nilai minimum.

Error yang sering muncul pada VLOOKUP

Satu pesan error dapat memiliki beberapa penyebab; periksa kemungkinan berikut secara berurutan.

Pesan error Penyebab Cara memperbaiki
#N/A Nilai yang dicari tidak ditemukan di kolom paling kiri. Sering karena spasi tersembunyi, angka tersimpan sebagai teks, atau argumen keempat salah. Periksa panjang teks dengan LEN, bersihkan dengan TRIM, lalu samakan tipe data kedua sisi.
#REF! Nomor kolom lebih besar dari jumlah kolom di tabel, misalnya 5 untuk tabel yang hanya 4 kolom. Periksa lebar blok tabel, lalu samakan nomor kolom dengan posisi yang diinginkan.
#VALUE! Nomor kolom kurang dari 1 atau berupa teks yang tidak dapat dikonversi menjadi angka. Isi nomor kolom dengan angka bulat, mulai dari 1.
#NAME? Nama fungsi salah tulis, misalnya VLKUP, atau rumus memakai nama rentang yang tidak dikenali Excel. Periksa ejaan VLOOKUP dan nama sheet. Tulis nama sheet diikuti tanda seru, misalnya Harga!.

Jika Excel menolak rumus saat dimasukkan, periksa tanda kurung dan pemisah argumen. Tanda kurung penutup atau titik koma yang hilang biasanya membuat rumus ditolak, bukan menghasilkan #NAME?.

Spasi di ujung teks paling sulit dilihat. Kode “ATK-001 ” tampak sama dengan “ATK-001”, tetapi panjangnya berbeda. Di sel bantu kosong, gunakan =LEN(A2) dan =TRIM(A2) untuk memeriksa kode di nota, lalu lakukan pemeriksaan serupa pada kode di tabel sumber. Hasil TRIM harus ditempel sebagai nilai ke sel asal. TRIM hanya menghapus spasi biasa. Spasi nonbreaking yang sering ikut dari hasil impor tidak ikut terhapus. Untuk itu, pakai =TRIM(SUBSTITUTE(A2;CHAR(160);" ")) di sel bantu, periksa hasilnya dengan LEN, lalu tempel sebagai nilai ke sel asal. Cara ini hanya menangani spasi nonbreaking berkode 160, bukan semua karakter tak terlihat.

Angka yang tersimpan sebagai teks biasanya ditandai segitiga hijau di pojok sel dan rata kiri. Pilih kolom tersebut, buka Data → Text to Columns, lalu klik Finish. Konversikan hanya data yang memang berupa bilangan. Pertahankan kode seperti 00101 dan kode lebih dari 15 digit sebagai teks, lalu samakan tipe data pada kedua sisi pencocokan.

Menyembunyikan error dengan IFERROR

Kadang kode memang tidak ada di daftar, dan nota tetap perlu terlihat rapi. IFERROR mengganti pesan error dengan teks.

Tambahkan baris 7 di sheet Nota berisi kode ATK-010 dengan jumlah 2. Kode itu tidak ada di daftar harga. Rumus di C7:

=IFERROR(VLOOKUP(A7;Harga!$A$2:$D$9;2;FALSE);"Kode tidak terdaftar")

Rumus di D7:

=IFERROR(VLOOKUP(A7;Harga!$A$2:$D$9;3;FALSE);0)

Rumus subtotal di E7 tetap =B7*D7. Setelah baris 7 ditambahkan, ubah total di E8 menjadi =SUM(E2:E7).

Kode Jumlah Nama barang Harga satuan Subtotal
ATK-010 2 Kode tidak terdaftar 0 0

Cek manual: 22.500 + 50.000 + 50.000 + 12.000 + 18.000 + 0 = 152.500

Harga 0 membuat nota tampak selesai, padahal ada barang yang belum dihitung. Jangan memfinalkan nota selama masih ada baris berstatus “Kode tidak terdaftar”. Jika hanya #N/A yang ingin ditangani, pakai IFNA sebagai gantinya. Error lain, seperti #REF!, tetap terlihat.

IFERROR menutup semua jenis error, termasuk kesalahan rumus yang sebenarnya. Jika nomor kolom ditulis 5 pada tabel 4 kolom, rumus tetap menampilkan “Kode tidak terdaftar” dan kesalahannya tersembunyi. Pakai IFERROR setelah rumus dipastikan benar.

Mencari di sheet lain dan batasan VLOOKUP

Rumus di atas sudah mengambil data dari sheet lain, yaitu Harga!$A$2:$D$9. Tanda seru memisahkan nama sheet dari alamat sel. Jika nama sheet mengandung spasi, tulis dengan kutip tunggal, misalnya 'Daftar Harga'!$A$2:$D$9.

Menyimpan daftar harga di sheet terpisah memudahkan perawatan. Saat harga naik, cukup ubah angka di sheet Harga, dan nota yang masih aktif ikut berubah. Perubahan ini cocok untuk nota yang belum disahkan, bukan untuk arsip transaksi. Setelah nota disahkan, simpan salinan nilai atau PDF agar harga transaksi lama tidak berubah.

Jika daftar harga ada di file lain, rumus menyimpan alamat file tersebut, misalnya [Harga.xlsx]Harga!$A$2:$D$9. Kalau file sumber dipindah atau diganti nama, Excel bisa menampilkan pesan pembaruan tautan atau memakai nilai lama. Buka Data → Edit Links untuk memperbarui sumber. Letak menu ini bisa sedikit berbeda antarversi.

VLOOKUP hanya bisa mencari ke kanan. Jika kolom kunci berada di D dan nilai yang ingin diambil berada di C, VLOOKUP biasa tidak dapat mengambil nilai tersebut karena posisinya di sebelah kiri kolom kunci.

Ada juga masalah saat kolom disisipkan. Misalnya Anda menyisipkan kolom baru sebelum kolom C pada sheet Harga. Harga bergeser ke D, tetapi indeks 3 kini mengambil kolom C yang baru, bukan harga. Excel tidak memunculkan error, sehingga hasil yang salah sulit ditemukan.

Dua fungsi berikut bisa menjadi pengganti. XLOOKUP tersedia di Excel 2021 ke atas dan Excel web. Rumusnya mengambil harga dari kode di A2:

=XLOOKUP(A2;Harga!$A$2:$A$9;Harga!$C$2:$C$9)

INDEX-MATCH tersedia di semua versi dan bisa mencari ke kiri:

=INDEX(Harga!$C$2:$C$9;MATCH(A2;Harga!$A$2:$A$9;0))

Keduanya tidak bergantung pada nomor kolom, sehingga lebih aman saat kolom disisipkan.

Pertanyaan yang sering muncul

Kenapa VLOOKUP saya hasilnya #N/A padahal datanya ada?

Ikuti urutan pemeriksaan di bagian error di atas. Jika kode sudah bersih dan tipe datanya sama, cek awal blok tabel. Blok harus dimulai dari kolom kode, misalnya Harga!$A$2:$D$9. Blok yang dimulai dari B membuat VLOOKUP mencari kode di kolom nama barang.

Apakah VLOOKUP bisa mencari ke kolom sebelah kiri?

Tidak. Pakai XLOOKUP atau INDEX-MATCH seperti contoh di bagian batasan VLOOKUP.

Apa bedanya VLOOKUP dengan HLOOKUP?

VLOOKUP (“vertical”) mencari nilai di kolom paling kiri, lalu turun ke bawah dan mengambil nilai di kolom lain. HLOOKUP (“horizontal”) mencari nilai dengan bergerak mendatar di baris paling atas tabel, lalu mengambil hasil dari baris yang ditentukan pada kolom yang cocok. Untuk daftar yang tersusun dalam kolom, seperti daftar harga toko alat tulis di atas, VLOOKUP adalah pilihan yang tepat.

Kalau nota perlu menjumlahkan subtotal per kategori, lanjutkan ke SUMIF. Tambahkan dulu kolom kategori di sheet Harga, lalu ambil kategorinya ke nota dengan VLOOKUP memakai nomor kolom yang sesuai. Setelah itu, kolom kategori dan subtotal bisa dipakai sebagai rentang SUMIF.

Rumus VLOOKUP di Excel: Cara Pakai dan Contoh Lengkap

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Kembali ke Atas