Fungsi Excel XMATCH dengan contoh formula

  • Berkongsi Ini
Michael Brown
carian tetapi berfungsi dengan betul hanya pada senarai yang diisih. Pada data yang tidak diisih, ia boleh mengembalikan hasil yang salah yang mungkin kelihatan biasa pada pandangan pertama.

Sintaks MATCH tidak menyediakan hujah mod carian sama sekali.

XMATCH mengendalikan tatasusunan secara asli

Tidak seperti pendahulunya, fungsi XMATCH direka untuk Excel dinamik dan mengendalikan tatasusunan secara asli, tanpa anda perlu menekan Ctrl + Shift + Enter . Ini menjadikan formula lebih mudah untuk dibina dan diedit, terutamanya apabila menggunakan beberapa fungsi berbeza bersama-sama. Cuma bandingkan penyelesaian berikut:

  • Formula sensitif huruf besar-besaran: XMATCH

    Tutorial memperkenalkan fungsi Excel XMATCH baharu dan menunjukkan cara ia lebih baik daripada MATCH untuk menyelesaikan beberapa tugas biasa.

    Dalam Excel 365, fungsi XMATCH telah ditambahkan untuk menggantikan fungsi MATCH. Tetapi sebelum anda mula menaik taraf formula sedia ada anda, adalah bijak untuk memahami semua kelebihan fungsi baharu dan bagaimana ia berbeza daripada yang lama.

    Ringkasnya, fungsi XMATCH adalah sama seperti MATCH tetapi lebih fleksibel dan teguh. Ia boleh mencari kedua-dua dalam tatasusunan menegak dan mendatar, mencari pertama-ke-akhir atau terakhir-ke-dahulu, mencari padanan tepat, anggaran dan separa serta menggunakan algoritma carian binari yang lebih pantas.

    Fungsi XMATCH Excel

    Fungsi XMATCH dalam Excel mengembalikan kedudukan relatif nilai dalam tatasusunan atau julat sel.

    Ia mempunyai sintaks berikut:

    XMATCH(lookup_value , lookup_array, [match_mode], [search_mode])

    Di mana:

    Lookup_value (diperlukan) - nilai yang perlu dicari.

    Lookup_array (diperlukan) - tatasusunan atau julat sel tempat untuk mencari.

    Mod_Padanan (pilihan) - menentukan jenis padanan yang hendak digunakan:

    • 0 atau ditinggalkan (lalai) - padanan tepat
    • -1 - padanan tepat atau nilai terkecil seterusnya
    • 1 - padanan tepat atau nilai terbesar seterusnya
    • 2 - padanan kad liar ( *, ?)

    Mod_Cari (pilihan) - menentukan arah carian dan algoritma:

    • 1 atau ditinggalkan (lalai) -perlawanan atau terbesar seterusnya. Tidak memerlukan sebarang pengisihan.

    Apabila match_mode / match_type argumen ditetapkan kepada -1:

    • MATCH carian untuk padanan tepat atau terbesar seterusnya. Memerlukan mengisih tatasusunan carian dalam tertib menurun.
    • XMATCH mencari padanan tepat atau terkecil seterusnya. Tidak memerlukan sebarang pengisihan.

    Carian kad liar

    Untuk mencari padanan separa dengan XMATCH, anda perlu menetapkan argumen match_mode kepada 2.

    Fungsi MATCH tidak mempunyai pilihan mod padanan kad bebas khas. Dalam kebanyakan kes, anda akan mengkonfigurasinya untuk padanan tepat ( match_type ditetapkan kepada 0), yang juga berfungsi untuk carian kad bebas.

    Mod carian

    Seperti XLOOKUP baharu fungsi, XMATCH mempunyai hujah mod_carian khas yang membolehkan anda mentakrifkan arah carian :

    • 1 atau ditinggalkan (lalai) - cari dahulu-ke -terakhir.
    • -1 - carian terbalik yang terakhir hingga yang pertama.

    Dan pilih algoritma carian binari , yang sangat pantas dan cekap pada data diisih .

    • 2 - carian binari pada data diisih menaik.
    • -2 - carian binari pada data diisih menurun.

    Carian binari , juga dipanggil carian separuh selang atau carian logaritma , ialah algoritma khas yang mencari kedudukan nilai carian dalam tatasusunan dengan membandingkannya kepada elemen tengah tatasusunan. Carian binari adalah lebih pantas daripada carian biasacari dari yang pertama hingga yang terakhir.

  • -1 - carian dalam susunan terbalik dari yang terakhir hingga yang pertama.
  • 2 - carian binari menaik. Memerlukan tatasusunan_carian untuk diisih dalam tertib menaik.
  • -2 - carian binari menurun. Memerlukan tatasusunan_carian untuk diisih dalam tertib menurun.

Carian binari ialah algoritma yang lebih pantas yang berfungsi dengan cekap pada tatasusunan yang diisih. Untuk mendapatkan maklumat lanjut, sila lihat mod Carian.

Versi Excel yang manakah mempunyai XMATCH?

Fungsi XMATCH hanya tersedia dalam Excel untuk Microsoft 365 dan Excel 2021. Dalam Excel 2019, Excel 2016 dan lebih awal versi, fungsi ini tidak disokong.

Formula asas XMATCH dalam Excel

Untuk mendapatkan gambaran umum tentang kemampuan fungsi tersebut, mari bina formula XMATCH dalam bentuk yang paling mudah, hanya mentakrifkan dua hujah pertama memerlukan hujah dan membiarkan hujah pilihan kepada lalainya.

Andaikata, anda mempunyai senarai lautan mengikut saiznya (C2:C6) dan anda ingin mencari pangkat lautan tertentu. Untuk melakukannya, hanya gunakan nama lautan, sebut India , sebagai nilai carian dan keseluruhan senarai nama sebagai tatasusunan carian:

=XMATCH("Indian", C2:C6)

Untuk membuat formula lebih fleksibel, masukkan lautan minat dalam beberapa sel, sebut F1:

=XMATCH(F1, C2:C6)

Hasilnya, anda mendapat formula XMATCH untuk mencari dalam tatasusunan menegak . Output ialah kedudukan relatif nilai carian dalam tatasusunan, yang dalam kes kamisepadan dengan kedudukan lautan:

Formula yang serupa berfungsi dengan sempurna untuk tatasusunan mendatar juga. Apa yang anda perlu lakukan ialah melaraskan rujukan lookup_array :

=XMATCH(B5, B1:F1)

fungsi Excel XMATCH - perkara yang perlu diingat

Untuk menggunakan XMATCH dalam lembaran kerja anda dengan berkesan dan mengelakkan keputusan yang tidak dijangka, sila ingat 3 fakta mudah ini:

  • Jika terdapat dua atau lebih kejadian nilai carian dalam tatasusunan carian, kedudukan padanan pertama dikembalikan jika argumen mod_carian ditetapkan kepada 1 atau ditinggalkan. Dengan mod_carian ditetapkan kepada -1, fungsi mencari dalam susunan terbalik dan mengembalikan kedudukan padanan terakhir seperti yang ditunjukkan dalam contoh ini.
  • Jika nilai carian tidak ditemui , ralat #N/A berlaku.
  • Fungsi XMATCH adalah tidak sensitif huruf besar/kecil secara semula jadi dan tidak dapat membezakan huruf besar. Untuk membezakan aksara huruf kecil dan huruf besar, gunakan formula XMATCH sensitif huruf besar ini.

Cara menggunakan XMATCH dalam Excel - contoh formula

Contoh berikut akan membantu anda memperoleh lebih pemahaman tentang Fungsi XMATCH dan kegunaan praktikalnya.

Padanan tepat lwn padanan anggaran

Tingkah laku padanan XMATCH dikawal oleh argumen mode_padanan pilihan:

  • 0 atau ditinggalkan (lalai) - formula hanya mencari padanan tepat. Jika padanan tepat tidak ditemui, a#N/A ralat dikembalikan.
  • -1 - formula mencari padanan tepat dahulu, dan kemudian untuk item yang lebih kecil seterusnya.
  • 1 - formula mencari padanan tepat dahulu dan kemudian untuk item seterusnya yang lebih besar.

Dan sekarang, mari lihat cara mod padanan berbeza mempengaruhi keputusan formula. Katakan anda ingin mengetahui di mana kawasan tertentu, katakan 80,000,000 km2, terletak di antara semua lautan.

Padanan tepat

Jika anda menggunakan 0 untuk mode_match , anda' akan mendapat ralat #N/A, kerana formula tidak dapat mencari nilai yang betul-betul sama dengan nilai carian:

=XMATCH(80000000, C2:C6, 0)

Item terkecil seterusnya

Jika anda menggunakan -1 untuk mode_padanan , formula akan mengembalikan 3, kerana padanan terdekat yang lebih kecil daripada nilai carian ialah 70,560,000 dan ia adalah item ke-3 dalam tatasusunan carian:

=XMATCH(80000000, C2:C6, -1)

Item terbesar seterusnya

Jika anda menggunakan 1 untuk mode_padan , formula akan mengeluarkan 2, kerana padanan terdekat lebih besar daripada nilai carian ialah 85,133,000, iaitu item ke-2 dalam tatasusunan carian :

=XMATCH(80000000, C2:C6, -1)

Imej di bawah menunjukkan semua keputusan:

Cara memadankan teks separa dalam Excel dengan kad bebas

Fungsi XMATCH mempunyai mod padanan khas untuk kad bebas: argumen mode_padan ditetapkan kepada 2.

Dalam mod padanan kad bebas, formula XMATCH menerima kad bebas berikut aksara:

  • Tanda soal (?) untuk memadankan mana-mana aksara tunggal.
  • Asterisk (*) untuk memadankan mana-mana aksarajujukan aksara.

Sila ingat bahawa kad bebas hanya berfungsi dengan teks, bukan nombor.

Sebagai contoh, untuk mencari kedudukan item pertama yang bermula dengan "selatan" , formulanya ialah:

=XMATCH("south*", B2:B6, 2)

Atau anda boleh menaip ungkapan kad bebas anda dalam beberapa sel, sebut F1 dan berikan rujukan sel untuk argumen lookup_value :

=XMATCH(F1, B2:B6, 2)

Dengan kebanyakan fungsi Excel, anda akan menggunakan tilde (~) untuk menganggap asterisk (~*) atau tanda soal (~?) sebagai literal aksara, bukan kad bebas. Dengan XMATCH, tilde tidak diperlukan. Jika anda tidak mentakrifkan mod padanan kad bebas, XMATCH akan menganggap bahawa ? dan * ialah aksara biasa.

Sebagai contoh, formula di bawah akan mencari julat A2:A7 tepat untuk aksara asterisk:

=XMATCH("*", A2:A7)

Carian terbalik XMATCH untuk mencari padanan terakhir

Sekiranya terdapat beberapa kejadian nilai carian dalam tatasusunan carian, kadangkala anda mungkin perlu mendapatkan kedudukan kejadian terakhir .

Arah carian dikawal menjadi argumen ke-4 XMATCH bernama mod_carian . Untuk mencari dalam susunan terbalik, iaitu dari bawah ke atas dalam tatasusunan menegak dan dari kanan ke kiri dalam tatasusunan mendatar, mod_carian hendaklah ditetapkan kepada -1.

Dalam contoh ini, kita akan mengembalikan kedudukan rekod terakhir untuk nilai carian tertentu (sila lihat tangkapan skrin di bawah). Untuk ini, sediakan hujah sebagaiberikut:

  • Nilai_carian - jurujual sasaran dalam H1
  • array_carian - nama jurujual dalam C2:C10
  • Mod_Padanan ialah 0 atau diabaikan (padanan tepat)
  • Mod_Cari ialah -1 (terakhir kepada yang pertama)

Meletakkan empat hujah bersama-sama, kita mendapat formula ini:

=XMATCH(H1, C2:C10, 0, -1)

Yang mengembalikan nombor jualan terakhir yang dibuat oleh Laura:

Cara untuk bandingkan dua lajur dalam Excel untuk padanan

Untuk membandingkan dua senarai padanan, anda boleh menggunakan fungsi XMATCH bersama-sama dengan IF dan ISNA:

IF( ISNA( XMATCH( target_list, senarai_carian, 0)), "Tiada padanan", "Padan")

Sebagai contoh, untuk membandingkan Senarai 2 dalam B2:B10 dengan Senarai 1 dalam A2:A10, formula mengambil bentuk berikut:

=IF(ISNA(XMATCH(B2:B10, A2:A9)), "", "Match in List 1")

Dalam contoh ini, kami mengenal pasti hanya padanan, oleh itu argumen value_if_true bagi fungsi IF ialah rentetan kosong ("").

Masukkan formula di atas dalam sel paling atas (C2 dalam kes kami), tekan Enter , dan ia akan "tumpah" ke dalam sel lain secara automatik (i t dipanggil julat tumpahan):

Cara formula ini berfungsi

Di tengah-tengah formula, fungsi XMATCH mencari untuk nilai daripada Senarai 2 dalam Senarai 1. Jika nilai ditemui, kedudukan relatifnya dikembalikan, jika tidak, ralat #N/A. Dalam kes kami, hasil XMATCH ialah tatasusunan berikut:

{#N/A;#N/A;2;#N/A;4;#N/A;#N/A;8;#N/A}

Susun atur ini "disuapkan" kepada fungsi ISNA untuk disemak untuk ralat #N/A.Untuk setiap ralat #N/A, ISNA mengembalikan BENAR; untuk sebarang nilai lain - SALAH. Hasilnya, ia menghasilkan tatasusunan nilai logik berikut, di mana TRUE mewakili bukan padanan dan FALSE mewakili padanan:

{TRUE;TRUE;FALSE;TRUE;FALSE;TRUE;TRUE;FALSE;TRUE}

Susun atur di atas pergi ke ujian logik fungsi IF . Bergantung pada cara anda mengkonfigurasi dua hujah terakhir, formula akan mengeluarkan teks yang sepadan. Dalam kes kami, ia ialah rentetan kosong ("") untuk bukan padanan ( value_if_true ) dan "Match in List 1" untuk padanan ( value_if_false ).

Catatan. Formula ini hanya berfungsi dalam Excel 365 dan Excel 2021 yang menyokong tatasusunan dinamik. Jika anda menggunakan Excel 2019, Excel 2016 atau versi terdahulu, sila lihat penyelesaian lain: Cara membandingkan dua lajur dalam Excel.

INDEX XMATCH dalam Excel

XMATCH boleh digunakan dalam kombinasi dengan fungsi INDEX untuk mendapatkan nilai daripada lajur lain yang dikaitkan dengan nilai carian, sama seperti formula INDEX MATCH. Pendekatan generik adalah seperti berikut:

INDEX ( return _ array , XMATCH ( lookup_value , lookup_array )

The logik adalah sangat mudah dan mudah diikuti:

Fungsi XMATCH mengira kedudukan relatif nilai carian dalam tatasusunan carian dan menghantarnya kepada row_num argumen INDEX. Berdasarkan baris nombor, fungsi INDEX mengembalikan nilai daripada mana-mana lajur yang anda tentukan.

Sebagai contoh, untuk mencari kawasanlautan dalam E1, anda boleh menggunakan formula ini:

=INDEX(B2:B6, XMATCH(E1, A2:A6))

INDEX XMATCH XMATCH untuk melakukan carian 2 dimensi

Kepada cari dalam lajur dan baris serentak, gunakan INDEX bersama dua fungsi XMATCH. XMATCH pertama akan mendapat nombor baris dan yang kedua akan mendapatkan semula nombor lajur:

INDEX ( data , XMATCH ( lookup_value , menegak _ tatasusunan_carian ), XMATCH ( nilai carian , susun_carian _ tatasusunan_carian ))

Formulanya serupa dengan PADANAN INDEX kecuali anda boleh meninggalkan hujah match_mode kerana ia lalai kepada padanan tepat.

Sebagai contoh, untuk mendapatkan semula nombor jualan bagi item tertentu (G1) dalam bulan tertentu (G2), formulanya ialah :

=INDEX(B2:D8, XMATCH(G1, A2:A8), XMATCH(G2, B1:D1))

Di mana B2:D8 ialah sel data tidak termasuk pengepala baris dan lajur, A2:A8 ialah senarai item dan B1:D1 ialah nama bulan.

Formula XMATCH peka huruf besar dan kecil

Seperti yang telah disebutkan, fungsi Excel XMATCH adalah tidak peka huruf besar-besaran mengikut reka bentuk. Untuk memaksanya untuk membezakan huruf besar kecil, gunakan XMATCH dalam kombinasi dengan fungsi EXACT:

MATCH(TRUE, EXACT( lookup_array , lookup_value ))

Untuk mencari dalam tertib terbalik dari terakhir hingga yang pertama:

MATCH(TRUE, EXACT( lookup_array , lookup_value ), 0, -1)

Contoh berikut menunjukkan formula generik ini dalam tindakan. Andainya anda mempunyai senarai id produk sensitif huruf besar-besaran dalam B2:B11. Anda sedang mencaricari kedudukan relatif item dalam E1. Formula sensitif huruf besar-kecil dalam E2 adalah semudah ini:

=XMATCH(TRUE, EXACT(B2:B11, E1))

Cara formula ini berfungsi:

Fungsi EXACT membandingkan nilai carian dengan setiap item dalam tatasusunan carian. Jika nilai yang dibandingkan adalah betul-betul sama, termasuk huruf besar, fungsi mengembalikan TRUE, FALSE sebaliknya. Tatasusunan nilai logik ini (di mana TRUE mewakili padanan tepat) pergi ke argumen lookup_array XMATCH. Dan kerana nilai carian adalah BENAR, fungsi XMATCH mengembalikan kedudukan padanan tepat pertama yang ditemui atau padanan tepat terakhir, bergantung pada cara anda mengkonfigurasi argumen mod_carian .

XMATCH lwn. MATCH dalam Excel

XMATCH direka bentuk sebagai pengganti yang lebih berkuasa dan serba boleh untuk MATCH, jadi kedua-dua fungsi ini mempunyai banyak persamaan. Walau bagaimanapun, terdapat perbezaan penting.

Tingkah laku lalai yang berbeza

Fungsi MATCH lalai kepada padanan tepat atau item terkecil seterusnya ( jenis_padan ditetapkan kepada 1 atau diabaikan).

Fungsi XMATCH secara lalai kepada padanan tepat ( mode_padanan ditetapkan kepada 0 atau diabaikan).

Tingkah laku yang berbeza untuk padanan anggaran

Apabila mode_padanan Argumen / match_type ditetapkan kepada 1:

  • carian MATCH untuk padanan tepat atau terkecil seterusnya. Memerlukan tatasusunan carian hendaklah diisih dalam tertib menaik.
  • XMATCH mencari tepat

Michael Brown ialah peminat teknologi yang berdedikasi dengan semangat untuk memudahkan proses kompleks menggunakan alat perisian. Dengan lebih sedekad pengalaman dalam industri teknologi, beliau telah mengasah kemahirannya dalam Microsoft Excel dan Outlook, serta Helaian Google dan Dokumen. Blog Michael berdedikasi untuk berkongsi pengetahuan dan kepakarannya dengan orang lain, menyediakan petua dan tutorial yang mudah diikuti untuk meningkatkan produktiviti dan kecekapan. Sama ada anda seorang profesional berpengalaman atau pemula, blog Michael menawarkan pandangan berharga dan nasihat praktikal untuk memanfaatkan sepenuhnya alatan perisian penting ini.