Rumus Excel · Pencarian

Rumus Excel MATCH: Mencari Posisi Data dan Memadukannya dengan INDEX

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 MATCH ditulis =MATCH(nilai_dicari, rentang, [match_type]), misalnya =MATCH(41,B2:B5,0) menghasilkan 4 karena 41 ada di posisi keempat. Pakai match_type 0 untuk kecocokan persis. Hasil MATCH sering dipakai sebagai nomor baris di fungsi INDEX.

Daftar isi

Sintaks MATCH (dan INDEX)

Sintaks

=MATCH(lookup_value; lookup_array; [match_type])=MATCH(lookup_value, lookup_array, [match_type])

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 MATCH (dan INDEX)
ArgumenPenjelasan
lookup_valueWajibNilai yang ingin dicocokkan: angka, teks, nilai logika, atau referensi ke sel berisi nilai itu.
lookup_arrayWajibRentang sel yang dicari.
match_typeOpsional-1, 0, atau 1. Bawaannya 1. Pakai 0 untuk nilai pertama yang persis sama.

Contoh penggunaan

Contoh 1: Posisi nilai yang persis sama

Data contoh 1 (huruf kolom dan nomor baris seperti di Excel)
BarisAB
1ProdukJumlah
2Pisang25
3Jeruk38
4Apel40
5Pir41
Rumus
=MATCH(41;B2:B5;0)=MATCH(41,B2:B5,0)
Hasil
4

41 berada di posisi keempat rentang B2:B5, jadi MATCH mengembalikan 4, bukan 41.

Contoh 2: Kecocokan mendekati (match_type 1)

Data contoh 2 (huruf kolom dan nomor baris seperti di Excel)
BarisAB
1ProdukJumlah
2Pisang25
3Jeruk38
4Apel40
5Pir41
Rumus
=MATCH(39;B2:B5;1)=MATCH(39,B2:B5,1)
Hasil
2

Tidak ada 39, jadi MATCH memakai nilai terbesar yang kurang dari atau sama dengan 39, yaitu 38 di posisi 2.

Contoh 3: Data tidak urut turun (match_type -1)

Data contoh 3 (huruf kolom dan nomor baris seperti di Excel)
BarisAB
1ProdukJumlah
2Pisang25
3Jeruk38
4Apel40
5Pir41
Rumus
=MATCH(40;B2:B5;-1)=MATCH(40,B2:B5,-1)
Hasil
#N/A

match_type -1 mengharuskan data urut turun. Kolom Jumlah urut naik, jadi hasilnya kesalahan #N/A.

Contoh 4: Mencari posisi teks

Data contoh 4 (huruf kolom dan nomor baris seperti di Excel)
BarisAB
1ProdukJumlah
2Pisang25
3Jeruk38
4Apel40
5Pir41
Rumus
=MATCH("Apel";A2:A5;0)=MATCH("Apel",A2:A5,0)
Hasil
3

Apel berada di baris ketiga rentang A2:A5. Teks yang dicari diapit tanda kutip.

Contoh 5: INDEX dan MATCH

Data contoh 5 (huruf kolom dan nomor baris seperti di Excel)
BarisAB
1ProdukJumlah
2Pisang25
3Jeruk38
4Apel40
5Pir41
Rumus
=INDEX(B2:B5;MATCH("Apel";A2:A5;0))=INDEX(B2:B5,MATCH("Apel",A2:A5,0))
Hasil
40

MATCH menemukan Apel di posisi 3, lalu INDEX mengambil nilai di baris ke-3 rentang B2:B5, yaitu 40.

Kesalahan umum

#N/A

Penyebab: MATCH tidak menemukan kecocokan, atau match_type 1/-1 dipakai pada data yang tidak diurutkan sesuai syaratnya.

Solusi: Pakai match_type 0 untuk kecocokan persis, atau urutkan data naik (untuk 1) atau turun (untuk -1).

Hasil berupa angka posisi, bukan nilai

Penyebab: MATCH memang mengembalikan posisi relatif item dalam rentang, bukan item itu sendiri.

Solusi: Masukkan hasil MATCH ke INDEX, misalnya =INDEX(B2:B5,MATCH("Apel",A2:A5,0)), untuk mengambil nilainya.

#REF! pada INDEX

Penyebab: row_num atau column_num yang diberikan ke INDEX menunjuk ke luar rentang array.

Solusi: Pastikan rentang INDEX dan rentang MATCH punya jumlah baris yang sama.

Pertanyaan umum

Apa arti match_type 0, 1, dan -1?

0 mencari nilai pertama yang persis sama, data boleh tidak urut. 1 (bawaan) mencari nilai terbesar yang kurang dari atau sama dengan nilai dicari, data harus urut naik. -1 mencari nilai terkecil yang lebih besar dari atau sama dengan, data harus urut turun.

Bagaimana cara kerja INDEX MATCH?

MATCH mencari posisi nilai dalam satu kolom, lalu posisi itu dipakai sebagai row_num di INDEX untuk mengambil isi kolom lain pada baris yang sama. Microsoft menyebut MATCH bisa memberikan nilai bagi argumen row_num fungsi INDEX.

Apakah MATCH membedakan huruf besar dan kecil?

Tidak. MATCH tidak membedakan huruf besar dan huruf kecil saat mencocokkan teks, jadi apel dan Apel dianggap sama.

Bisakah MATCH memakai wildcard?

Bisa, jika match_type 0 dan nilai yang dicari berupa teks. Tanda tanya (?) mewakili satu karakter dan tanda bintang (*) mewakili urutan karakter apa pun.

Panduan terkait

Sumber

  1. Fungsi MATCH (Microsoft Support)support.microsoft.com
  2. Fungsi INDEX (Microsoft Support)support.microsoft.com