INDEX MATCH di Google Sheets - cara lain untuk pencarian vertikal

  • Bagikan Ini
Michael Brown

Ketika Anda perlu menemukan data di lembar Anda yang sesuai dengan catatan kunci tertentu, biasanya Google Sheets VLOOKUP yang Anda gunakan. Tapi begitulah: VLOOKUP menampar Anda dengan keterbatasan hampir seketika. Itulah mengapa Anda sebaiknya meningkatkan sumber daya untuk tugas tersebut dengan mempelajari INDEX MATCH.

INDEX MATCH di Google Sheets adalah kombinasi dari dua fungsi: INDEX dan MATCH. Saat digunakan bersama-sama, mereka bertindak sebagai alternatif yang lebih baik untuk Google Sheets VLOOKUP. Mari kita cari tahu kemampuan mereka bersama di posting blog ini. Tapi pertama-tama, saya ingin memberi Anda tur singkat tentang peran mereka sendiri di spreadsheet.

    Fungsi Google Sheets MATCH

    Saya ingin memulai dengan Google Sheets MATCH karena sangat sederhana. Ini memindai data Anda untuk nilai tertentu dan mengembalikan posisinya:

    =MATCH(search_key, range, [search_type])
    • search_key adalah catatan yang Anda cari. Diperlukan.
    • rentang adalah baris atau kolom untuk dilihat. Diperlukan.

      Catatan. MATCH hanya menerima larik satu dimensi: baik baris atau kolom.

    • search_type adalah opsional dan menentukan apakah kecocokan harus tepat atau perkiraan. Jika dihilangkan, maka secara default adalah 1:
      • 1 berarti rentang diurutkan dalam urutan menaik. Fungsi ini mendapatkan nilai terbesar yang kurang dari atau sama dengan nilai search_key .
      • 0 akan membuat fungsi mencari kecocokan yang tepat jika rentang Anda tidak diurutkan.
      • -1 mengisyaratkan bahwa record diurutkan menggunakan pengurutan menurun. Dalam hal ini, fungsi mendapatkan nilai terkecil yang lebih besar atau sama dengan nilai search_key .

    Berikut contohnya: untuk mendapatkan posisi buah beri tertentu dalam daftar semua buah beri, saya memerlukan rumus MATCH berikut di Google Sheets saya:

    =MATCH("Blueberry", A1:A10, 0)

    Fungsi INDEX Google Sheets

    Sementara MATCH menunjukkan di mana mencari nilai Anda (lokasinya dalam rentang), fungsi INDEX Google Sheets mengambil nilai itu sendiri berdasarkan offset baris dan kolomnya:

    =INDEX(referensi, [baris], [kolom])
    • referensi adalah kisaran yang harus dilihat. Diperlukan.
    • barisan adalah jumlah baris yang akan diimbangi dari sel pertama rentang Anda. Opsional, 0 jika dihilangkan.
    • kolom , seperti barisan adalah jumlah kolom offset. Juga opsional, juga 0 jika dihilangkan.

    Jika Anda menentukan kedua argumen opsional (baris dan kolom), Google Sheets INDEX akan mengembalikan catatan dari sel tujuan:

    =INDEX(A1:C10, 7, 1)

    Lewati salah satu argumen tersebut dan fungsi akan memberi Anda seluruh baris atau kolom yang sesuai:

    =INDEX(A1:C10, 7)

    Cara menggunakan INDEX MATCH di Google Sheets - contoh rumus

    Ketika INDEX dan MATCH digunakan bersama dalam spreadsheet, mereka berada pada kondisi terkuatnya. Mereka benar-benar dapat menggantikan Google Sheets VLOOKUP dan mengambil catatan yang diperlukan dari tabel berdasarkan nilai kunci Anda.

    Buat rumus INDEX MATCH pertama Anda untuk Google Sheets

    Misalkan Anda ingin mendapatkan info stok cranberry dari tabel yang sama dengan yang saya gunakan di atas. Saya hanya menukar kolom B dan C (Anda akan mengetahui alasannya nanti).

    1. Sekarang semua buah beri terdaftar di kolom C. Fungsi Google Sheets MATCH akan membantu Anda menemukan baris cranberry yang tepat: 8

      =MATCH("Cranberry", C1:C10, 0)

    2. Letakkan seluruh rumus MATCH itu ke barisan argumen dalam fungsi INDEX:

      =INDEX(A1:C10, MATCH("Cranberry", C1:C10, 0))

      Yang satu ini akan mengembalikan seluruh baris dengan cranberry di dalamnya.

    3. Tetapi, karena yang Anda perlukan hanyalah info stok, tentukan juga nomor kolom pencarian: 3

      =INDEX(A1:C10, MATCH("Cranberry", C1:C10,0), 2)

    4. Voila!

    5. Anda bisa melangkah lebih jauh dan melepaskan indikator kolom terakhir ( 2 ). Anda tidak akan membutuhkannya sama sekali jika Anda hanya menggunakan kolom lookup ( B1:B10 ) daripada seluruh tabel ( A1:C10 ) sebagai argumen pertama:

      =INDEX(B1:B10, MATCH("Cranberry", C1:C10, 0))

      Tip. Cara yang lebih nyaman untuk memeriksa ketersediaan berbagai buah beri adalah dengan menempatkannya dalam daftar drop-down ( E2 ) dan mereferensikan fungsi MATCHmu ke cell dengan daftar tersebut:

      =INDEX(B1:B10, MATCH(E2, C1:C10, 0))

      Setelah Anda memilih berry, nilai terkait akan berubah sesuai dengan itu:

    Mengapa INDEX MATCH di Google Sheets lebih baik daripada VLOOKUP

    Anda sudah tahu bahwa Google Sheets INDEX MATCH mencari nilai Anda dalam tabel dan mengembalikan catatan terkait lainnya dari baris yang sama. Dan Anda tahu bahwa Google Sheets VLOOKUP melakukan hal yang persis sama. Jadi mengapa repot-repot?

    Masalahnya adalah, INDEX MATCH memiliki beberapa keuntungan utama lebih dari VLOOKUP:

    1. Pencarian sisi kiri dimungkinkan Saya mengubah tempat kolom sebelumnya untuk menggambarkan yang satu ini: Fungsi INDEX MATCH di Google Sheets dapat dan memang melihat ke kiri kolom pencarian. VLOOKUP selalu mencari kolom pertama dari rentang dan mencari kecocokan di sebelah kanannya - jika tidak, hanya mendapat kesalahan # N / A:

    2. Tidak ada referensi yang kacau ketika menambahkan kolom baru dan memindahkan kolom yang sudah ada. Jika Anda menambahkan atau memindahkan kolom, INDEX MATCH akan mencerminkan perubahan secara otomatis tanpa ikut campur dalam hasilnya. Karena Anda menggunakan referensi kolom, mereka langsung disesuaikan oleh Google Sheets:

      Silakan coba lakukan ini dengan VLOOKUP: VLOOKUP membutuhkan nomor urut, bukan referensi cell untuk kolom pencarian. Dengan demikian, Anda hanya akan mendapatkan nilai yang salah karena kolom lain mengambil tempat yang sama - kolom 2 dalam contoh saya:

    3. Mempertimbangkan kasus teks apabila perlu (lebih lanjut mengenai hal ini di bawah).
    4. Bisa digunakan untuk pencarian vertikal berdasarkan beberapa kriteria.

    Saya mengundang Anda untuk melihat dua poin terakhir secara terperinci di bawah ini.

    Pencarian v yang peka huruf dengan INDEX MATCH di Google Sheets

    INDEX MATCH adalah pilihan yang tepat dalam hal sensitivitas huruf besar-kecil.

    Seandainya semua buah beri dijual dengan dua cara - lepas (ditimbang di konter) dan dikemas dalam kotak. Oleh karena itu, ada dua kejadian dari masing-masing buah beri yang ditulis dalam kasus yang berbeda dalam daftar, masing-masing dengan ID-nya sendiri yang juga bervariasi dalam kasusnya:

    Jadi, bagaimana Anda bisa mencari info stok pada berry yang dijual dengan cara tertentu? VLOOKUP akan mengembalikan nama pertama yang ditemukannya, apa pun kasusnya.

    Untungnya, INDEX MATCH untuk Google Sheets dapat melakukannya dengan benar. Anda hanya perlu menggunakan satu fungsi tambahan - FIND atau EXACT.

    Contoh 1. TEMUKAN untuk Vlookup yang peka huruf besar-kecil

    FIND adalah fungsi case-sensitive di Google Sheets yang membuatnya bagus untuk pencarian vertikal case-sensitive:

    =ArrayFormula(INDEX(B2:B19, MATCH(1, FIND(E2, C2:C19)), 0))

    Mari kita lihat apa yang terjadi dalam rumus ini:

    1. FIND memindai kolom C ( C2:C19 ) untuk catatan dari E2 ( ceri Setelah ditemukan, rumus "menandai" sel itu dengan angka - 1 .
    2. Cocokkan pencarian untuk tanda ini - 1 - dalam kolom yang sama ( C ) dan memberikan nomor barisnya ke INDEX.
    3. INDEX turun ke baris itu di kolom B ( B2:B19 ) dan mengambil catatan yang diperlukan untuk Anda.
    4. Ketika Anda selesai membuat rumusnya, tekan Ctrl+Shift+Enter untuk menambahkan ArrayFormula di awal. Hal ini diperlukan karena tanpa itu FIND tidak akan bisa mencari di array (di lebih dari satu cell). Atau Anda bisa mengetikkan ' ArrayFormula ' dari keyboard Anda.

    Contoh 2. EXACT untuk Vlookup yang peka huruf besar-kecil

    Jika Anda mengganti FIND dengan EXACT, FIND akan mencari record dengan karakter yang sama persis, termasuk kasus teksnya.

    Satu-satunya perbedaan adalah bahwa EXACT "menandai" kecocokan dengan BENAR daripada angka 1 Oleh karena itu, argumen pertama untuk MATCH haruslah BENAR :

    =ArrayFormula(INDEX(B2:B19, MATCH(TRUE, EXACT(E2, C2:C19), 0))))

    Google Sheets INDEX MATCH dengan beberapa kriteria

    Bagaimana jika ada beberapa kondisi berdasarkan yang ingin Anda ambil recordnya?

    Mari kita periksa harga ceri yang dijual di Ember PP dan sudah habis :

    Saya mengatur semua kriteria dalam daftar drop-down di kolom F. Dan itu adalah Google Sheets INDEX MATCH yang mendukung banyak kriteria, bukan VLOOKUP. Inilah rumus yang perlu Anda gunakan:

    =ArrayFormula(INDEX(B2:B24, MATCH(CONCATENATE(F2:F4), A2:A24&C2:C24&D2:D24, 0),))

    Jangan panik! :) Logikanya sebenarnya cukup sederhana:

    1. MENGGABUNGKAN(F2:F4) menggabungkan ketiga record dari sel dengan kriteria menjadi satu string seperti ini:

      Ember CherryPP Berjalan keluar

      Ini adalah search_key untuk MATCH, atau, dengan kata lain, apa yang Anda cari dalam tabel.

    2. A2:A24&C2:C24&D2:D24 merupakan rentang untuk fungsi MATCH untuk dilihat. Karena ketiga kriteria terjadi dalam tiga kolom terpisah, dengan cara ini Anda semacam menggabungkannya:

      Baki CherryCardboardDalam stok

      Kemasan CherryFilmKeluar dari stok

      Ember CherryPP Berjalan keluar

      dll.

    3. Argumen terakhir dalam MATCH - 0 - memungkinkan untuk menemukan kecocokan yang tepat untuk Ember CherryPP Berjalan keluar di antara semua baris kolom gabungan tersebut. Seperti yang bisa Anda lihat, itu ada di baris ke-3.
    4. Dan kemudian INDEX melakukan tugasnya: ia mengambil record dari baris ke-3 kolom B.
    5. ArrayFormula digunakan untuk mengizinkan fungsi-fungsi lain bekerja dengan array.

    Tip. Jika rumusmu tidak menemukan kecocokan, maka rumusmu akan mengembalikan error. Untuk menghindarinya, kamu bisa membungkus seluruh rumus ini dalam IFERROR (jadikan itu argumen pertama) dan masukkan apapun yang ingin kamu lihat dalam cell, bukannya error, sebagai argumen kedua:

    =IFERROR(ArrayFormula(INDEX(B2:B27, MATCH(CONCATENATE(F2:F4), A2:A27&C2:C27&D2:D27, 0),))), "Tidak ditemukan")

    Alternatif yang lebih baik untuk INDEX MATCH di Google Sheets - Beberapa Pertandingan VLOOKUP

    Apa pun fungsi lookup yang Anda sukai, VLOOKUP atau INDEX MATCH, ada alternatif yang lebih baik untuk keduanya.

    Multiple VLOOKUP Matches adalah add-on khusus untuk Google Sheets yang dirancang untuk:

    • pencarian tanpa rumus
    • pencarian ke segala arah
    • mencari dengan beberapa kondisi untuk tipe data yang berbeda: teks, angka, tanggal, waktu, dll.
    • mengambil beberapa pertandingan, sebanyak yang Anda butuhkan (tentu saja, asalkan ada banyak pertandingan di meja Anda)

    Antarmukanya sangat mudah, jadi Anda tidak perlu meragukan apakah Anda melakukan segalanya dengan benar:

    1. Pilih rentang sumber.
    2. Mengatur jumlah kecocokan dan kolom yang akan dikembalikan.
    3. Menyempurnakan kondisi dengan menggunakan operator yang sudah ditentukan sebelumnya ( berisi, =, tidak kosong , antara dll.).

    Anda juga akan mampu:

    • Pratinjau hasil
    • memutuskan di mana menempatkannya
    • dan bagaimana: sebagai formula atau hanya nilai

    Jangan lewatkan kesempatan ini untuk memeriksa add-on. Silakan dan instal dari Google Workspace Marketplace. Halaman tutorialnya akan menjelaskan setiap opsi secara detail.

    Kami juga menyiapkan video instruksional khusus:

    Sampai jumpa di komentar di bawah ini atau di artikel berikutnya ;)

    Michael Brown adalah penggemar teknologi berdedikasi dengan hasrat untuk menyederhanakan proses kompleks menggunakan perangkat lunak. Dengan pengalaman lebih dari satu dekade di industri teknologi, dia telah mengasah keahliannya di Microsoft Excel dan Outlook, serta Google Spreadsheet dan Dokumen. Blog Michael didedikasikan untuk berbagi pengetahuan dan keahliannya dengan orang lain, memberikan tip dan tutorial yang mudah diikuti untuk meningkatkan produktivitas dan efisiensi. Apakah Anda seorang profesional berpengalaman atau pemula, blog Michael menawarkan wawasan berharga dan saran praktis untuk mendapatkan hasil maksimal dari perangkat lunak penting ini.