Menu

Rumus XMATCH Excel: Posisi dan Kecocokan Terakhir

=XMATCH(E2,A2:A6) mengembalikan posisi E2 di A2:A6, dengan pencocokan persis sebagai default. XMATCH juga bisa menemukan nilai lebih kecil atau lebih besar berikutnya tanpa pengurutan, mencari dari bawah, dan memakai wildcard.

Setiap lembar kerja di halaman ini interaktif: ubah angka atau rumus, dan hasilnya langsung dihitung ulang.

=XMATCH(E2,A2:A6) mengembalikan posisi E2 di A2:A6: 1 untuk sel pertama, 2 untuk sel kedua. Berbeda dengan MATCH, XMATCH memakai pencocokan persis kecuali diminta lain. XMATCH butuh Excel 2021 atau Microsoft 365; di versi yang lebih lama pakai MATCH(E2,A2:A6,0).

Posisi sebuah produk
F2
ABCDEF
1ProductCategoryPriceLook forPosition
2AppleFruit$1.20Carrot3
3PearFruit$1.50
4CarrotVegetable$0.80
5BreadBakery$2.40
6MilkDairy$1.10
Klik sel untuk melihat rumusnya. Ubah angka atau rumus, dan lembar kerja langsung menghitung ulang.

Carrot adalah item ketiga, jadi F2 menampilkan 3. Ketik Kiwi dan hasilnya #N/A. Seperti semua pencarian di Excel, XMATCH tidak membedakan huruf besar dan kecil.

Sintaks XMATCH

=XMATCH(lookup_value, lookup_array, [match_mode], [search_mode])
ArgumenNilai
match_mode0 persis (default), -1 persis atau lebih kecil berikutnya, 1 persis atau lebih besar berikutnya, 2 pencocokan wildcard
search_mode1 dari item pertama (default), -1 dari item terakhir, 2 pencarian biner urutan naik, -2 pencarian biner urutan turun

Mode biner lebih cepat pada daftar terurut yang sangat besar dan mengembalikan posisi yang salah pada daftar yang tidak terurut. Mode-mode lainnya bisa dipakai pada data dengan urutan apa pun.

Lebih kecil atau lebih besar berikutnya, tanpa pengurutan

match_mode 1 menemukan nilai terkecil yang lebih besar dari atau sama dengan nilai yang dicari. Itu menjawab "kotak terkecil yang muat" bahkan jika ukurannya tidak diurutkan. Dengan MATCH, daftarnya harus diurutkan dari yang terbesar ke yang terkecil.

Kotak terkecil yang muat untuk barangnya
E2
ABCDE
1BoxHolds (liters)Item (liters)18
2S5Position4
3XL50BoxL
4M12
5L25
Klik sel untuk melihat rumusnya. Ubah angka atau rumus, dan lembar kerja langsung menghitung ulang.

Ukuran yang muat untuk 18 liter adalah 25 dan 50, dan yang lebih kecil adalah 25, item keempat, kotak L. Ubah E1 menjadi 12 untuk kecocokan persis (M) atau menjadi 40 untuk XL. match_mode -1 adalah kebalikannya: nilai terbesar yang kurang dari atau sama dengan nilai yang dicari, aturan untuk golongan pajak dan tingkat komisi. XLOOKUP punya dua mode yang sama dan langsung mengembalikan nilainya.

Mencari dari item terakhir

search_mode -1 dimulai dari bawah, jadi XMATCH mengembalikan posisi kecocokan terakhir. Posisinya tetap dihitung dari atas range.

Pesanan terakhir seorang pelanggan
F2
ABCDEF
1DateCustomerAmountCustomerBen
22026-03-02Ben120Last position5
32026-03-05Ana80Last date2026-03-20
42026-03-09Ben45First position1
52026-03-12Cara200
62026-03-20Ben60
72026-03-24Ana95
Klik sel untuk melihat rumusnya. Ubah angka atau rumus, dan lembar kerja langsung menghitung ulang.

Ben muncul di posisi 1, 3 dan 5. Pencarian maju mengembalikan 1 dan pencarian mundur mengembalikan 5, yaitu pesanannya pada 2026-03-20. Sebelum ada XMATCH, posisi terakhir butuh trik array: =MATCH(2,1/(B2:B7=F1)).

Wildcard butuh match_mode 2

Dengan match_mode 2, * mewakili karakter apa pun dan ? mewakili tepat satu karakter. Di mode-mode lainnya, keduanya adalah karakter biasa, sedangkan MATCH memperlakukannya sebagai wildcard setiap kali match_type bernilai 0.

Cari berdasarkan pola
D2
ABCD
1ProductPatternPosition
2Green tea*coffee2
3Iced coffee?lack*4
4Coffee beans
5Black tea
6Orange juice
Klik sel untuk melihat rumusnya. Ubah angka atau rumus, dan lembar kerja langsung menghitung ulang.

*coffee (apa saja yang diakhiri "coffee") cocok dengan Iced coffee di posisi 2, dan ?lack* cocok dengan Black tea di posisi 4. Coffee beans tidak cocok dengan *coffee, karena polanya tidak punya * di akhir. Tanpa match_mode 2, pola yang sama dicari sebagai teks apa adanya, jadi di Excel hasilnya #N/A:

=XMATCH("*coffee", A2:A6)        #N/A: no cell is literally "*coffee"
=XMATCH("*coffee", A2:A6, 2)     2

XMATCH vs MATCH

MATCHXMATCH
Default jika mode dikosongkanPerkiraan (1), data harus terurutPersis
Nilai lebih kecil berikutnya1, data terurut naik-1, urutan bebas
Nilai lebih besar berikutnya-1, data terurut turun1, urutan bebas
WildcardSelalu aktif dengan 0Hanya dengan match_mode 2
Kecocokan terakhirTidaksearch_mode -1
VersiSemuaExcel 2021 dan Microsoft 365

Tandanya terbalik: -1 pada MATCH menemukan nilai lebih besar berikutnya, sedangkan -1 pada XMATCH menemukan nilai lebih kecil berikutnya. Saat mengubah MATCH(E2,A2:A6,0) menjadi XMATCH, hapus angka 0-nya; saat mengubah MATCH dengan pencocokan perkiraan, balik tandanya dan urutan data tidak lagi berpengaruh. Halaman MATCH membahas fungsi yang lebih lama itu.

Latihan: posisi pesanan terakhir

Pesanan
F2
ABCDEF
1DateCustomerAmountCustomerBen
22026-03-02Ben120Last position
32026-03-05Ana80
42026-03-09Ben45
52026-03-12Cara200
62026-03-20Ben60
72026-03-24Ana95
Klik sel untuk melihat rumusnya. Ubah angka atau rumus, dan lembar kerja langsung menghitung ulang.

Giliranmu: Di F2, kembalikan posisi pesanan terakhir dari pelanggan di F1.

Pertanyaan yang sering diajukan

Apa perbedaan MATCH dan XMATCH?

XMATCH memakai pencocokan persis sebagai default (MATCH memakai pencocokan perkiraan), menemukan nilai lebih kecil atau lebih besar berikutnya tanpa butuh data terurut, bisa mencari dari item terakhir ke atas, dan hanya memperlakukan * dan ? sebagai wildcard jika kamu memintanya dengan match_mode 2. Fungsi ini butuh Excel 2021 atau Microsoft 365.

Bagaimana cara menemukan kemunculan terakhir dengan XMATCH?

Isi search_mode, argumen keempat, dengan -1: =XMATCH("Ben",B2:B7,0,-1) mengembalikan posisi Ben yang terakhir di B2:B7. Posisinya tetap dihitung dari atas range.

Apa yang dikembalikan XMATCH jika tidak ada yang cocok?

#N/A, sama seperti MATCH. Bungkus dengan IFNA untuk menampilkan hal lain: =IFNA(XMATCH(E2,A2:A6),"Not in list").

Apakah XMATCH bisa menggantikan MATCH di dalam INDEX?

Bisa. =INDEX(C2:C6,XMATCH(E2,A2:A6)) bekerja seperti INDEX dengan MATCH(E2,A2:A6,0), tanpa angka 0 yang bisa terlupa. Pakai MATCH saja jika file-nya harus bisa dibuka di Excel 2019 atau yang lebih lama.

Ilustrasi bahasa pemrograman di Coddy

Belajar coding dengan Coddy

Mulai