VBA INDEX MATCH Excel-eko irizpide anitzetan oinarrituta (3 metodo)

  • Partekatu Hau
Hugh West

Datu kopuru handia dugunean, batzuetan zaila da datu-multzotik datu zehatzik ateratzea. Excel-en INDEX eta MATCH funtzioekin batera edozein motatako datuak berreskura ditzake datu multzo handi batean ere. VBA ezartzea Excel-en edozein eragiketa exekutatzeko metodorik eraginkorrena, azkarrena eta seguruena da. Artikulu honetan, 3 metodo ezberdin erakutsiko dizkizugu INDEX MATCH irizpide anitzetan oinarrituta Excel-en VBA makro rekin nola egin jakiteko.

Deskargatu Lan-koadernoa

Doako praktika Excel lan-koadernoa deskargatu dezakezu hemendik.

VBA INDEX MATCH Irizpide anitzetan oinarrituta.xlsm

3 metodo VBA INDEX MATCH-ekin Excel-eko irizpide anitzetan oinarrituta

Ondoko ataletan, INDEX MATCH-a sorta baterako irizpide anitzetan oinarrituta nola egin erakutsiko dizugu , hautapen zehatz baterako eta taula baterako Excel-en VBA -rekin.

Goian. artikulu honek jarraituko duen datu multzoa dugu. Datu-multzoan Ikaslearen izena , Ikaslearen IDa, eta Azterketa-notak ditugu. Zutabe batean bizi den emaitza jakin bat aterako dugu beste bi zutabeetako baldintzen arabera.

Irizpideak – 1: txertatu VBA-rekin INDEX MATCH Excel-en dimentsio anitzeko (bi) bilaketarako

Kontuan izan hurrengo irudia. Ikasle baten izena " Ertza" gorde dugu GeluxanG4 ; eta Emaitza n bilatuko dugun zutabea, Azterketa-markak , G5 gelaxka n gordetzen da. Azterketa notak zutabean bilatuko dugu eta " Edge" k lortutako Marks gordeko ditugu G6 gelaxkan .

Bilatzeko urratsak bi dimentsioko matrizea bat sortzen du INDEX eta MATCH Excel-en VBA-rekin behean ematen dira.

Urratsak:

  • Hasieran, sakatu Alt + F11 teklatuan edo joan hona. fitxa Garatzailea -> Visual Basic Visual Basic Editor irekitzeko.

  • Ondoren, pop-up kodearen leihoan, menu-barran, egin klik Txertatu -> Modulua .

  • Ondoren, kopiatu hurrengo kodea eta itsatsi kodean leihoa.
4747

Zure kodea exekutatzeko prest dago.

  • Orain, sakatu F5 zure gailuan. teklatuan edo menu-barran hautatu Exekutatu -> Exekutatu Azpi/UserForm . Azpi-menu-barran dagoen Exekutatu ikono txikia ere klik egin dezakezu makroa exekutatzeko.

Kodea exekutatu ondoren, begiratu beheko gif-a emaitza ikusteko.

Ondorioz, “ Ertza” k lortutako Markak azterketa, 67 , G7 gelaxka n berreskuratzen da.

VBA kodearen azalpena

2439

Lan-orriaren aldagaia definitzea.

4944

Gorde lan-orriaren izena. Gure fitxaren izena "Bi dimentsioa" da, eman beharko zenukeizena zure kalkulu-orriaren arabera.

9706

Kode zati honek C5:D14 barrutia hautatzen du bilaketa-barruti gisa. Ondoren, bilatu G4 gelaxkan gordetako bat-etortzea B5:B14 barrutian eta bilatu G5 gelaxkan gordetako bat-etortzea barrutian. C4:D4 eta pasatu emaitza G6 gelaxkara.

Irakurri gehiago: Nola erabili INDEX MATCH Data tarterako irizpide anitzekin

Irizpideak – 2: Aplikatu makroa MATCH Balioa aurkitzeko Erabiltzaileak Definitutako Funtzioarekin (UDF) INDEX bidez

Datu-multzo batetik bat datozen balioak atera ditzakezu. erabiltzaileak definitutako funtzioa (UDF) . Hurrengo iruditik, egingo duguna da, ikasle jakin baten Ikaslearen IDa eta Azterketa-notak gaindituko ditugu eta funtzioak Izena ikasle espezifiko horren.

Ikus dezagun hori nola lortu Ikaslearen izena “Finn” VBA rekin.

Urratsak:

  • Lehen erakutsi bezala, ireki Visual Basic Editor Garatzailea fitxatik eta Sartu Modulua kodearen leihoan.
  • Ondoren, kodearen leihoan, kopiatu hurrengo kodea eta itsatsi .
6217

  • Ez exekutatu kode hau, gorde .
  • Orain, itzuli interesgarri zaizun lan-orrira . Hautatu emaitza gorde nahi duzun edozein gelaxka . Gure kasuan, F5 gelaxka da.
  • Geula horretan, idatzi UDF duzuna.kodean sortu berri dute ( MatchByIndex ) eta pasatu ikasle espezifikoaren Ikasle IDa eta Azterketa-Notak funtzioaren parentesi artean.

Gehienez. " Finn" izena bere ID (105) eta Markak (84) ateratzen saiatzen ari gara, beraz, gure kasuan formula,<3 bihurtzen da> =MatchByIndex(105,84)

  • Ondoren, sakatu Sartu .

Begiratu ondoko irudia.

F5 gelaxka n, arrakastaz berreskuratu dugu “ Finn”<2 izena> bere ID eta Markak besterik gabe pasatuz VBA kodean sortu dugun funtzioaren barruan.

VBA Kodearen Azalpena

6142

Funtzio berri bat sortzea eta bere barnean aldagaiak pasatzea. Funtzioari edozein izen defini diezaiokezu.

7159

Gure errenkada 4. zenbakitik hasten da. Datu-multzoa abiatzen den errenkada-zenbakia eman behar duzu.

3875

Aldagaiak definitzea.

3096

Lehenik eta behin, zehaztu lan-orria. Gure orriaren izena "UDF" da, izena eman behar duzu zure kalkulu-orriaren arabera. Ondoren, hasi C:D barrutian bilatzen definitu dugun lehen errenkadatik azken errenkadaraino.

3203

Hasi lehen errenkadatik azken errenkadaraino errepikatzen. Funtzioaren barruan pasatuko dugun lehen balioa C zutabearen barruan sartzen bada eta funtzioaren barruan pasatuko dugun bigarren balioa D zutabearen barruan sartzen bada, orduan itzuliko da. dubat B zutabetik. Bestela, irten funtziotik, amaitu adierazpen guztiak eta joan hurrengo lerrora.

5454

Exekutatzen ari den bitartean aurreko baldintza betetzen ez bada, "Datu ez da aurkitu" mezua itzuliko da eta kodeak funtzioa utziko du.

Gehiago irakurri: AURKIBIDEA-MATCH Excel-en testu partzialerako irizpide anitzekin (2 modu)

Irizpideak – 3: VBA inplementatu Excel-en datu anitz dituen taula batetik MATCH balioa itzultzeko

Atal honetan, taula bateko indizeen bidez bat datorren balio bat nola itzultzen ikasiko dugu. MsgBox -n VBA Excel-en.

Ikus dezagun nola ateratzen diren Markak gurean agertzen den taulatik. Ikasle jakin baten datu-multzoa ( T Izen gaia: TableMatch ) kodearen barruan Izena eta ID emanez. Gure kasuan, Izena eta ID Finn eta 105 izango dira hurrenez hurren.

Urratsak :

  • Lehenik eta behin, ireki Visual Basic Editor Garatzailea fitxatik eta Txertatu Modulua kodearen leihoan.
  • Ondoren, kopiatu hurrengo kodea eta itsatsi kodearen leihoan.
9915

Zure kodea exekutatzeko prest dago orain.

  • Geroago, Exekutatu kode hau eta begiratu ondoko irudiari ondorioz zer gertatu den ikusteko.

Goiko irudian ikus dezakezun bezala, Microsoft Excel pop-gorako mezu-koadroa, kodearen barruan eman ditugun Markak: 84 ren ID: 105 eta Izena: Finn erakusten dizkizu.

VBA kodearen azalpena

5311

Aldagaiak definitzea.

5448

Orriaren izena eta taularen izena aldagaien barruan ezartzea.

3065

Biltegiratzea bilaketa-balioak eta bilaketa-zutabeak.

8866

Kode zati honek azpiindizearen hasieratik amaierara arte arakatzen du eta bilaketa-zutabeetan zehaztutako IDaren eta Izenaren bat etortzen bada, orduan gorde emaitza eta itxi adierazpen guztiak. Gainera, irten iteraziotik eta joan kodearen hurrengo zatira.

3170

Emaitza MsgBox-era botatzen du.

Gehiago irakurri: Bilatu eta itzuli Excel-en gelaxka batean kateatutako balio anitz

Ondorioa

Bukatzeko, artikulu honek 3 metodo ezberdin erakutsi dizkizu INDEX MATCH oinarrituta. irizpide anitzetan Excel-en VBA makroa rekin. Artikulu hau zuretzat oso onuragarria izan dela espero dut. Anima zaitez gaiari buruzko edozein galdera egin.

Hugh West esperientzia handiko Excel prestatzaile eta analista da, industrian 10 urte baino gehiagoko esperientzia duena. Kontabilitate eta Finantzetan Lizentziatua eta Enpresen Administrazioko Masterra da. Hughek irakasteko grina du eta jarraitzeko eta ulertzeko erraza den irakaskuntza-ikuspegi berezia garatu du. Excel-en ezagutza adituak mundu osoko milaka ikasle eta profesionalei beren gaitasunak hobetzen eta beren karreran bikaintzen lagundu die. Bere blogaren bidez, Hughek bere ezagutzak munduarekin partekatzen ditu, doako Excel tutorialak eta lineako prestakuntza eskainiz, pertsona eta enpresei beren potentzial osoa lortzen laguntzeko.