Daptar eusi
Nalika urang gaduh jumlah data anu ageung, sakapeung sesah nimba data khusus tina set data. Kalayan fungsi INDEX sareng MATCH Excel tiasa nyandak data naon waé sanajan dina set data anu ageung. Ngalaksanakeun VBA mangrupikeun metode anu paling efektif, panggancangna, sareng paling aman pikeun ngajalankeun operasi naon waé dina Excel. Dina artikel ieu, urang bakal némbongkeun Anjeun 3 métode béda ngeunaan cara ngalakukeun INDEX MATCH dumasar kana sababaraha kriteria dina Excel kalawan VBA macro .
Unduh Workbook
Anjeun tiasa ngaunduh buku latihan Excel gratis ti dieu.
VBA INDEX MATCH Dumasar kana Sababaraha Kriteria.xlsm
3 Métode sareng VBA INDEX MATCH Dumasar kana sababaraha Kriteria dina Excel
Dina bagian di handap ieu, kami bakal nunjukkeun anjeun kumaha ngalakukeun INDEX MATCH dumasar kana sababaraha kriteria pikeun rentang , pikeun pilihan husus jeung pikeun méja dina Excel kalawan VBA .
Di luhur urang boga dataset nu artikel ieu bakal nuturkeun. Urang gaduh Nami Siswa , ID Siswa, sareng Mark Ujian unggal murid dina set data. Urang bakal nimba hasil nu tangtu dina hiji kolom dumasar kana kaayaan tina dua kolom lianna.
Kriteria – 1: Lebetkeun VBA jeung INDEKS MATCH pikeun Pilarian Multiple (Dua) Dimensi dina Excel
Perhatikeun gambar di handap ieu. Kami parantos nyimpen nami murid khusus " Edge" dina SélG4 ; sareng kolom anu urang badé milarian Hasil , Mark Ujian , disimpen dina Sél G5 . Urang bakal milarian dina kolom Mark Ujian sareng nyimpen Mark anu " Tepi" ngagaduhan dina Sél G6 .
Léngkah-léngkah néangan hasil array dua diménsi kalawan INDEX jeung MATCH dina Excel kalawan VBA dibéréndélkeun di handap.
Léngkah-léngkah:
- Di awal, pencét Alt + F11 dina kibor anjeun atawa buka tab Pamekar -> Visual Basic pikeun muka Visual Basic Editor .
- Salajengna, dina jandela pop-up kode, ti bar menu, klik Selapkeun - & GT; Modul .
- Salajengna, salin kodeu ieu sareng témpélkeun kana kodeu jandela.
1962
Kode anjeun ayeuna siap dijalankeun.
- Ayeuna, pencét F5 dina anjeun keyboard atawa tina bar menu pilih Run -> Jalankeun Sub/UserForm . Anjeun oge bisa ngan klik dina ikon Run leutik dina sub-menu bar pikeun ngajalankeun makro.
Sanggeus palaksanaan kode, tingali gif di handap pikeun ningali hasilna.
Hasilna, Tanda yén " Tepi" ngagaduhan dina ujian, 67 , dicandak dina Sél G7 .
VBA Code Katerangan
4830
Nangtukeun variabel LKS.
2353
Simpen ngaran LKS. Nami lambaran kami nyaéta "Dua Diménsi", anjeun kedah nyayogikeunngaran nurutkeun spreadsheet anjeun.
4814
Potongan kode ieu milih rentang C5:D14 salaku rentang pilarian. Teras milarian patandingan anu disimpen dina sél G4 dina rentang B5:B14 sareng milarian patandingan anu disimpen dina sél G5 dina rentang C4:D4 teras lebetkeun hasilna ka sél G6 .
Baca Selengkapnya: Kumaha Ngagunakeun INDEX MATCH sareng Sababaraha Kriteria pikeun Rentang Tanggal
Kriteria – 2: Larapkeun Makro pikeun Milarian MATCH Value ku INDEX sareng User-Defined Function (UDF)
Anjeun tiasa nimba nilai anu cocog tina set data sareng fungsi nu didefinisikeun ku pamaké (UDF) . Tina gambar di handap ieu, naon anu bakal urang laksanakeun nyaéta, urang bakal lulus ID Siswa sareng Mark Ujian murid anu tangtu sareng fungsina bakal ngalungkeun kami Nami tina murid husus éta.
Hayu urang tingali kumaha ngahontal éta pikeun Ngaran Murid "Finn" kalawan VBA .
Léngkah-léngkah:
- Sapertos dipidangkeun sateuacana, buka Visual Basic Editor tina tab Developer sareng Selapkeun a Modul dina jandela kode.
- Saterusna, dina jandela kode, salin kodeu di handap ieu sareng témpél nya.
7047
- Tong ngajalankeun kode ieu, simpen nya.
- Ayeuna, balik deui ka lembar kerja anu dipikaresep. Pilih sél mana wae nu Anjeun hoyong simpen hasilna. Dina kasus urang, éta Sél F5 .
- Dina sél éta, tulis UDF anjeun.karek dijieun dina kode ( MatchByIndex ) jeung lulus ID Mahasiswa jeung Tanda Ujian murid husus dina jero kurung fungsi.
Salaku urang nyobian nimba nami " Finn" ti na ID (105) sareng Marks (84) , janten pikeun kasus urang rumusna janten,
=MatchByIndex(105,84)
- Teras, pencét Enter .
Tingali gambar di handap ieu.
Dina Sél F5 , urang geus hasil meunangkeun ngaran “ Finn” ku ngan saukur ngalebetkeun ID sareng Mark na di jero fungsi anu ku urang jieun dina kode VBA .
VBA Code Explanation
9634
Nyieun fungsi anyar jeung ngalirkeun variabel di jerona. Anjeun tiasa nangtukeun ngaran naon waé kana fungsi éta.
5654
Baris urang mimitian ti baris nomer 4. Anjeun kudu nyadiakeun nomer baris tempat dataset anjeun dimimitian.
7013
Nangtukeun variabel.
7239
Kahiji, tangtukeun lembar kerja pikeun dianggo. Nami lambar kami nyaéta "UDF", anjeun kedah masihan nami dumasar kana hamparan anjeun. Teras mimitian milarian dina rentang C:D ti baris kahiji anu urang tangtukeun ka baris pamungkas.
9489
Mimitian iterasi ti baris kahiji nepi ka baris pamungkas. Upami nilai kahiji anu bakal urang lebetkeun di jero fungsina aya di jero kolom C sareng upami nilai kadua anu bakal kami lebetkeun di jero fungsina aya di jero kolom D , maka éta bakal uih deui. étacocog tina kolom B . Upami teu kitu, kaluar tina fungsina, mungkas sadaya pernyataan, teras angkat ka baris salajengna.
9213
Upami kaayaan samemehna teu kaeusi nalika ngajalankeun, teras pesen "Data Teu Kapendak" bakal dipulangkeun sareng kode bakal ninggalkeun fungsi.
Maca deui: INDEX-MATCH sareng Sababaraha Kriteria pikeun Téks Parsial dina Excel (2 Cara)
Kriteria - 3: Laksanakeun VBA pikeun Ngabalikeun Nilai MATCH tina Méja sareng Sababaraha Data dina Excel
Dina bagian ieu, urang bakal diajar kumaha ngabalikeun nilai anu cocog ku indéks tina méja dina MsgBox dina VBA Excel.
Hayu urang tingali kumaha nimba Tandaan tina tabél anu dipidangkeun dina kami. set data ( T Nama bisa: TableMatch ) murid tangtu ku cara méré Nami jeung ID di jero kodeu. Pikeun kasus urang, Ngaran jeung ID bakal jadi Finn jeung 105 masing-masing.
Lengkah-lengkah. :
- Mimitina, buka Visual Basic Editor tina tab Developer jeung Selapkeun a Modul dina jandela kode.
- Salajengna, salin kode ieu sareng tempelkeun kana jandela kode.
3788
Kode anjeun ayeuna tos siap dijalankeun.
- Engke, Jalankeun kode ieu sareng tingali gambar di handap ieu kanggo ningali hasilna.
Sakumaha anjeun tiasa ningali tina gambar di luhur, aya pop- Microsoft Excel up kotak pesen némbongkeun Anjeun Tandaan: 84 tina ID: 105 jeung Nami: Finn nu kami disadiakeun di jero kode.
Penjelasan Kode VBA
2490
Nangtukeun variabel.
7373
Nyetel ngaran lambar jeung ngaran tabel di jero variabel.
3472
Nyimpen nilai lookup jeung kolom lookup pikeun neangan.
4060
Potongan kode ieu nyeken ngaliwatan ti mimiti nepi ka ahir subskrip jeung lamun manggihan cocok ID nu tangtu jeung Ngaran dina kolom pilarian lajeng nyimpen hasilna jeung nutup sakabeh pernyataan. Oge, kaluar iterasi tur lebet ka bagian kode nu salajengna.
8086
Ngalungkeun hasilna dina MsgBox.
Baca Selengkapnya: Paluruh jeung Balik Sababaraha Nilai Dihijikeun kana Hiji Sél dina Excel
Kacindekan
Pikeun nyimpulkeun, tulisan ieu nunjukkeun anjeun 3 metode anu béda ngeunaan cara ngalaksanakeun Désar INDEX MATCH dina sababaraha kriteria dina Excel kalawan VBA makro . Kuring miharep artikel ieu geus pisan mangpaat pikeun anjeun. Punten naroskeun patarosan naon waé ngeunaan topik éta.