Pasangan Match dan Index sering digunakan untuk mencari data secara dinamis |
Apa itu Fungsi Index dan Match ?
Dalam keseharian pengolahan data dalam Excel hampir dipastikan Anda akan bekerja dengan dua pola berikut:- Melakukan pencarian data dari cell lain, biasanya dari suatu nilai terhadap suatu referensi range data tertentu.
- Pencarian tersebut harus fleksibel, dalam arti dapat mencari dan mengambil data dari kolom ataupun baris manapun yang kita tentukan.
Fungsi INDEX
Fungsi INDEX adalah fungsi yang cukup sederhana, digunakan untuk mendapatkan nilai dari suatu cell berdasarkan pencarian pada suatu definisi table / data range worksheet kita.Pencarian digunakan berdasarkan informasi posisi kolom dan baris, dengan acuan berupa kolom dan baris pertama table / data range tersebut.
Syntax fungsi INDEX adalah sebagai berikut :
INDEX(array, row_num, [column_num])
Keterangan :
Keterangan :
- array : adalah table / range data yang terdiri dari satu atau beberapa kolom dan baris.
- row_num : adalah angka yang menunjukkan posisi baris dengan acuan dari cell pertama ( kolom / baris ujung kiri atas ) dari array.
- column_num : adalah angka yang menunjukkan posisi kolom dengan acuan dari kolom / baris pertama dari array. Argumen ini bersifat opsional (boleh digunakan atau tidak).
Penjelasan mengenai fungsi INDEX ini dapat diilustrasikan pada Gambar 1 di bawah ini.
Gambar 1. Ilustrasi Penggunaan Fungsi Index |
Hasil dari "navigasi cell" pada fungsi ini adalah nilai dari cell C6, yaitu angka 20.
Gambar berikutnya (gambar 2) menunjukkan hasil penggunaan fungsi INDEX pada worksheet Excel.
Gambar 2. Contoh Penggunaan Fungsi Index (klik untuk memperbesar) |
Fungsi MATCH
Fungsi MATCH adalah fungsi yang digunakan untuk mencari suatu nilai dari suatu range yang terdapat pada suatu kolom atau baris, tapi tidak kedua-duanya.Syntax fungsi MATCH adalah sebagai berikut :
MATCH(lookup_value, lookup_array, [match_type])
Keterangan :
Keterangan :
- lookup_value : adalah nilai yang ingin dicari pada lookup_array.
- lookup_array : adalah range data dari suatu kolom ataupun baris.
- match_type : adalah angka yang menunjukkan tipe pencocokan sebagai berikut :
- 1 : jenis pencocokan dimana lookup_array dalam keadaan terurut secara ascending (kecil ke besar). Pencocokan dilakukan dengan mengambil nilai terbesar dari range data yang lebih kecil atau sama dari lookup_value.
- 0 : jenis pencocokan dimana pada lookup_array dicari data yang sama persis dengan lookup_value. Urutan data tidak menjadi masalah. Jika diketemukan lebih dari satu data yang sama, maka akan diambil data yang pertama kali diketemukan secara sekuensial.
- -1 : jenis pencocokan dimana lookup_array dalam keadaan terurut secara descending (besar ke kecil). Pencocokan dilakukan dengan mengambil nilai terkecil dari range data yang lebih besar atau sama dari lookup_value.
Untuk kejelasan apa yang dimaksud dengan match_type ini, perhatikan ilustrasi pada Gambar 3 di bawah ini.
Pada contoh tersebut nilai lookup adalah 3, yang kemudian dicari pada data array dengan tiga kelompok susunan data seperti tampak pada gambar.
Gambar 3. Ilustrasi Contoh Penggunaan Match Type - Skema Pertama |
Terlihat dengan pilhan match_type mulai dengan nilai -1, 0 dan 1 didapatkan hasil posisi yang berbeda dari fungsi match, masing-masing yaitu 5, 2, dan 4.
Contoh lainnya terlihat pada Gambar 4 di bawah ini. Pada kasus ini nilai lookupnya adalah 4 yang dicari pada data array dengan nilai 1, 2, 3, 3, 5, 5 dan 6 (sama dengan contoh sebelumnya). Dengan pilhan tiap tipe mulai dari -1, 0 dan 1 didapatkan posisi dari fungsi match masing-masing adalah 3, NA (Not Available / Tidak Ditemukan), dan 4.
Gambar 4. Ilustrasi Contoh Penggunaan Match Type - Skema Kedua |
Screenshot berikut menunjukkan beberapa contoh lebih lanjut penggunaan match pada Excel 2007 (klik pada gambar untuk memperbesar).
Gambar 5. Contoh Penggunaan Match pada Excel (1) |
Gambar 6. Contoh Penggunaan Match pada Excel 2007 (2) |
Gambar 7. Contoh Penggunaan Match pada Excel 2007 (3) |
Penggunaan dari Gabungan Fungsi INDEX dan MATCH
Seperti dijelaskan sebelumnya, penggabungan fungsi INDEX dan MATCH akan menghasilkan solusi pencarian data yang cukup powerful dimana kita dapat mencari dari referensi berdasarkan kolom / baris yang kita inginkan.Syntax dari penggabungan fungsi ini tampak seperti berikut :
INDEX(array, MATCH(lookup_value, lookup_array, [match_type]), column_num)
jika yang dicari adalah data range baris pada suatu kolom,
atau...
INDEX(array, row_num, MATCH(lookup_value, lookup_array, [match_type]))
jika yang dicari adalah data range kolom pada suatu baris.
Sekilas solusi ini mirip dengan fungsi VLOOKUP yang telah kita bahas sebelumnya. Namun dengan fungsi VLOOKUP kita terbatas pada pencarian pada kolom pertama pada data range referensi dan harus terurut, sedangkan dengan penggabungan fungsi ini kita bisa mencari dari kolom manapun dan tidak perlu dalam keadaan terurut (sesuai match_type tentunya).
Berikut adalah dua gambar contoh penggunaan dari gabungan kedua fungsi INDEX dan MATCH.
Gambar 8. Contoh Penggunaan Index dan Match (1) |
Gambar 9. Contoh Penggunaan Index dan Match (2) |
Kesimpulan
Fungsi MATCH dan INDEX masing-masing merupakan fungsi untuk melakukan pencarian dan navigasi dari suatu table / data range. Bedanya fungsi MATCH mengembalikan nilai posisi sedangkan fungsi INDEX mengembalikan nilai dari suatu posisi cell.Penggabungan kedua fungsi tersebut menjadi solusi yang sangat baik sebagai alternatif dari fungsi VLOOKUP yang telah dikenali sebagai fungsi untuk mencari / lookup suatu nilai referensi.
gak ada link donlot sampel excelnya ya
ReplyDeleteHi Anonymous,
DeleteBaru sadar saya ga kasih link contoh ya. Berikut hasil upload fungsi index dan match yang saya bahas disini ya ...
http://goo.gl/MzkpW
Semoga bermanfaat...
saya lagi cari rumus utk bisa mengembalikan nilai dari pencarian yang menggunakan 3 variabel.. misalnya saya punya sheet Daftar Harga Barang dgn kolom sbb:
ReplyDeleteKolom 1 berupa Kode/ID
Kolom 2 berupa tipe konsumen (reseller/langsung)
kolom 3 harga barang.
di sheet yang lain saya punya rincian transaksi penjualan yang disusun perhari. Pada sheet ini sy punya kolom:
Kolom 1: tanggal
Kolom 2: Kode/ID
Kolom 3: tipe konsumen
Nah saya menginginkan pada Kolom 4 dapat muncul harga barang tersebut utk Kode dan tipe konsumen yg sudah saya catat sebelumnya.
Bagaimana caranya? function apa yg perlu sy gunakan dan gimana rumusnya. Kl boleh jawabannya dikirim ke aspire5541@gmail.com
Website ini sangat berguna. Trims sudah mau berbagi.
Hi Fay,
DeleteSaya panggilnya Bapak / Ibu ya ? Saya coba buat artikel dari kasus ini ya. Jadi jawabannya bisa dilihat oleh semua pengunjung. Akan saya update di comment ini juga. Terima kasih.
Update: Hi Fay, silahkan lihat solusinya di http://www.belajarexcel.info/2013/03/contoh-kasus-pencarian-multi-variable.html. Semoga bermanfaat ya !
DeleteHi Fay,
ReplyDeleteklo nerapin rumus index match di vba koding ny gmna ya,?
jadi klo mw cari data nya di klik dulu di cmd
hallo, gan.
ReplyDeleteklo rumus mengacak angka/jam, bagaimana gan?
mohon pencerahannya.
trim's
gan. ada gak rumus untuk menggabungkan 2 tabel / array yg sejenis? (misal tabel harga barang thn 2012 dg 2013)
ReplyDeletesaya ingin bertanya pak,
ReplyDeletebagaimana jika saya menggunakan fungsi match, dimana ada banyak data yang sama, tetapi saya menginginkan hasil dari fungsi match tersebut menunjukkan baris yang saya inginkan.
contoh :
dc-35, baris 3
dc-35, baris 5
dc-35, baris 10
dc-35, baris 25
dari data diatas, saya menginginkan hasil fungsi match menunjukkan baris 10.
apakah ada fungsi lain yang bisa saya gunakan untuk mencapai tujuan saya, atau tetap menggunakan fungsi match??
mohon bantuannya pak.
terima kasih sebelumnya.
thanks mas bro keep posting
ReplyDeleteSangat bermanfaat sekali belajar excelnya, tanks bro
ReplyDeletetrimakasih banyak, sangat bermanfaat
ReplyDeleteini dia..setelah keliling dunia maya. akhirnya ketemu juga benua excel yang lengkap :D
ReplyDeleteTerimakasih banyak, sangat membantu sekali :)