Hvernig á að nota INDEX MATCH með Excel VBA

  • Deildu Þessu
Hugh West

Þú getur notað innbyggðu Excel vinnublaðsaðgerðirnar eins og VLOOKUP aðgerðina , CHOOSE aðgerðina og PMT aðgerðina í VBA kóðanum þínum og forritum einnig. Reyndar er hægt að nálgast og nota flestar Excel vinnublaðsaðgerðirnar í VBA kóða . Eins og notaðu INDEX & MATCH Verkefnablaðsaðgerðir í Excel VBA kóða.

Hvers vegna viltu nota Excel Verkblaðsaðgerðir í VBA þínum kóða ? Jæja til að auka virkni kóðans sem þú ert að nota. Þú þarft líka ekki að koma með þínar eigin aðgerðir, nema þú þurfir það virkilega, ef virknin er þegar til staðar. Allt sem þú þarft að gera er að fá aðgang að aðgerðinni sem þú þarft þar sem hún er þegar til staðar og þá er engin þörf á að finna upp hjólið aftur.

Svo skulum við byrja með dæmi sem sýnir hvernig á að nota INDEX  MATCH með Excel VBA.

Við ætlum að nota INDEX og MATCH aðgerðirnar í Excel VBA kóði , til að búa til einfalt UserForm. Með því að nota eyðublaðið velur notandinn nafn nemandans og síðan er samsvarandi kyn nefnds nemanda og augnlitur sóttur og skilað.

Sækja æfingarvinnubók

Vinsamlegast hlaðið niður æfingarbókinni til að æfðu þig.

INDEX-MATCH.xlsx

9 auðveld skref til að nota INDEX og MATCH innan VBA kóða

The INDEX og MATCH Aðgerðir eru oft notaðar í samsetningu í formúlum, til að framkvæma háþróaða uppflettingu. Þetta tvennt í sameiningu býður upp á ákveðna kosti umfram VLOOKUP .

Við höfum þegar farið ítarlega yfir hvernig á að nota INDEX og MATCH til að framkvæma háþróaða uppflettingar í Excel vinnubók sem beinni vinnublaðsformúlu, í fyrri kennsluefni . Við ætlum nú að sjá hvernig á að nota INDEX og MATCH aðgerðir saman í VBA kóða , til að veita svipaða virkni og uppflettinguna UserForm sem við ætlum að búa til.

Skref 1: Notaðu INDEX og MATCH aðgerðir í gagnasetti

  • Við erum að byrja með tvö blöð í fjölvi okkar -virkjað vinnubók. Annað er tómt blað sem heitir UserForm , hitt er blað sem heitir StudentInformation , sem inniheldur svið sem sýnir nöfn nemenda, samsvarandi kyn þeirra og augnlit sem sýnt hér að neðan.

Við skulum minna okkur fljótt á hvort við vildum nota VIÐSLUTAKA og MATCH Aðgerðir í einni formúlu, í raunverulegu vinnublaðinu til að gefa okkur kynið á nafni nemandans sem við viljum fletta upp. Við myndum nota eftirfarandi formúlu:

=INDEX(B2:B31, MATCH("Diana Graham", A2:A31, 0))

  • Þegar ýtt er á CTRL-ENTER , fáum við gildi Kvenna til baka, sem kyn eins og sýnt er hér að neðan.

Skref 2: Breyttu nafni B dálks í Nemendanöfn

  • Við munum nú nefna sviðið A2: A31 , Nemendanöfn eins og sýnt er hér að neðan.

  • Fela blaðið Nemendaupplýsingar með því að hægrismella og velja Fela. Það er góð hugmynd að fela yfirborðsvinnublöðin sem innihalda upplýsingarnar, sem þú vilt ekki að notandinn breyti eða sjái.

Skref 3: Opnaðu Visual Basic gluggann

  • Nú, með UserForm blaðið virkt, förum við í Hönnuður > Kóði > Visual Basic til að opna Visual Basic Editor (VBE) .
  • Einu sinni í VBE viðmótinu förum við í Insert, UserForm eins og sýnt er hér að neðan .

Skref 4: Breyttu eiginleikum og bættu við textareitum

  • Með því að nota Eiginleikar gluggann , munum við endurnefna eyðublaðið okkar í Student Lookup , breyta yfirskriftinni í Lookup Student Information, breyta BackColor í ljósblátt og stilla hæðina á 300 px og breiddin í 350 px. Ef Eiginleikaglugginn birtist ekki skaltu ýta á F4 takkann á lyklaborðinu þínu til að sjá hann.

  • Við mun nú setja inn merkimiða með Verkjakassanum (ef þú getur ekki séð Verkfærakistuna, farðu af einhverjum ástæðum í Skoða, Toolbox ), breytum yfirskriftinni í Veldu nemanda og við munum breyta BackColor yfir í hvítt í þessu tilfelli. Við munum stilla leturgerðina á Georgia , leturstílinn á feitletrað , leturstærðina á 12 og miðju stillir textann saman. Sérbrellurnar sem notaðar eru verða 1– fmSpecialEffectRaised eins og sýnt er hér að neðan.

  • Nú munum við setja inn combo box fyrir neðan merki. Nefndu þennan samsetta reit cmdStudentName og fyrir RowSource , sláðu inn StudentNames.

  • Til að sjá áhrif þess að stilla RowSource í combo boxinu, Smelltu á Run Sub/UserForm hnappinn .
  • Nú vegna þess að RowSource að nafngreindu sviði, þegar notandinn smellir á fellivalmyndarörina á UserForm sýnir combo boxið nöfn nemenda úr nefndu sviðinu, sjálfkrafa eins og sýnt er hér að neðan.

  • Lokaðu UserForm með því að smella á lokahnappinn. Ýttu á Alt-F11 til að fara aftur í VBE .
  • Þegar þú ert kominn aftur í VBE skaltu bæta öðru merki við UserForm ( fyrir neðan combo reitinn) og breyttu Caption í Kyn og við munum breyta BackColor í hvítt í þessu tilfelli. Við munum stilla leturgerðina á Georgia , leturstílinn á feitletrað , leturstærðina á 12 og miðju stilla textann . Sérbrellurnar sem notaðar eru verða 1– fmSpecialEffectRaised eins og sýnt er hér að neðan.

  • Búa til textareit fyrir neðan Kyn merkið og nefndu það txtGender .
  • Bættu við öðru merki sem heitir Auga Litur og textareit sem heitir txtEyeColour eins og sýnt er hér að neðan. Notaðu sömu eiginleika fyrir merkimiðann og fyrir tvö önnur merki sem áður var bætt við eyðublaðið, til að tryggja að UserForm hafi samræmt útlit.

  • Veldu allar stýringar, bættar við UserForm , hingað til með því að nota stýrilykilinn.

  • Miðja lárétt, eins og sýnt er hér að neðan.

Lesa Meira: Hvernig á að nota INDEX MATCH formúlu í Excel (9 dæmi)

Svipaðar lestur

  • Excel INDEX MATCH Ef klefi inniheldur texta
  • Hvernig á að nota INDEX-MATCH formúlu í Excel til að búa til margar niðurstöður
  • Index Match Summa margar raðir í Excel (3 leiðir)
  • Lærðu Excel VBA forritun & Fjölvi (ókeypis kennsla – skref fyrir skref)
  • 22 fjölvadæmi í Excel VBA

Skref 5: Bæta við hnappi úr verkfærakistunni

  • Næst, Bættu hnappi við eyðublaðið með því að nota Verkjakassann . Breyttu nafni hnappsins í cmdLookUp , BackColor í ljós appelsínugult, haltu Tahoma letri og breyttu stílnum í feitletrað , breyttu loksins textanum á hnappinum í Flitið upp Nemandi Upplýsingar eins og sýnt er hér að neðan.

Skref 6: Settu inn VBA kóða

  • Hægrismelltu , hnappinn sem nýlega var bætt við og velja Skoða Kóði .

  • Sláðu inn eftirfarandi kóða fyrir hnappinn smelltu atburður:

9489

Við byrjum á því að lýsa yfir þrjár breytur og úthluta afbrigðisgagnategundinni til þessara yfirlýstu afbrigði gagnategunda. Afbrigðisgagnategundin er góð gagnategund til að byrja með. Vegna þess að þegar þú vinnur með vinnublað aðgerðir ertu kannski ekki alltaf viss um úttakið. Notaðu því afbrigðisgagnategundina þegar þú ert að byrja.

Síðar er ráðlegt að nota eina af hinum sértækari gagnagerðunum eins og heiltala eða streng. Fyrir lengra komna kóða notar afbrigðisgagnategundin minni ekki eins vel og aðrar gagnategundir.

Breyta a teiknar gildið úr valkostinum sem notandinn velur í fellivalmyndinni á UserForm . Ef það er ekkert val, þá eru allir hinir textareitirnir tómir .

Ef þú velur nafn nemanda úr combo reitnum á UserForm, þá dregur breyta b gildi með því að nota INDEX Worksheet aðgerðina ásamt MATCH Function í VBA kóðann, eins og sýnt er.

Það flettir upp gildinu með því að nota í grundvallaratriðum sömu setningafræði og vinnublaðsaðgerðin. Þegar verkstæðisaðgerðir eru notaðar í VBA er VBA IntelliSense í þessu tiltekna tilviki ekki mjög innsæi , því þekkir tilMælt er með setningafræðinni sem fengin er af þekkingu á vinnublaði. Breyta c teiknar gildi með því að nota INDEX Verkblað aðgerð ásamt MATCH aðgerð í VBA kóðanum þegar notandi velur valmöguleika úr combo boxinu.

Breyta b nær gildi frá kyni dálkur í vinnublaðinu, en breyta c fær gildi úr augnlitadálknum í vinnublaðinu.

Kynjatextareiturinn er fylltur með b gildi og augnlitatextareiturinn er fylltur með gildi c .

Lesa meira: Excel VBA Events (A Complete Guideline)

Skref 7: Settu inn stjórnhnapp

  • Farðu nú í vinnublaðið sem heitir UserForm í vinnubókinni þinni. Forsníða það, eins og sýnt er hér að neðan, og settu inn myndina sem ExcelWIKI gefur.

  • Farðu í Hönnuður > Stýringar > Settu inn > ActiveX stýringar.

  • Settu inn hnapp eins og sýnt er.

  • Með hnappinn valinn, farðu í Hönnuði > Stýringar > Eiginleikar .

  • Breyttu nafni hnappsins í cmdShowForm og textinn við Flettingu Upplýsingar nemenda .

Skref 8: Skoða Uppflettingarkóði

  • Hægri-smelltu á hnappinn og veljið Skoða kóða eins og sýnt erhér að neðan.

  • Sláðu inn eftirfarandi kóða:
1492

Skref 9: Sýndu lokaniðurstöðu

  • Snúið aftur í vinnublaðið. Gakktu úr skugga um að hakað sé við Hönnun Mode .
  • Smelltu á hnappinn til að sýna eyðublaðið.

  • Veldu nafn nemanda með combo box . Kóðinn mun skila kyni og augnlit nemandans sjálfkrafa.

Mundu að vista vinnubókina þína sem macro-virkja vinnubók , ef þú hefur ekki gert það nú þegar og þar hefurðu það, notum við INDEX & MATCH vinnublaðsaðgerðir í Excel VBA kóða til að búa til uppflettingareyðublað.

Lesa meira: Excel INDEX-MATCH formúla til að skila mörgum gildum lárétt

Niðurstaða

Excel hefur margar gagnlegar vinnublaðsaðgerðir , sem hægt er að nota í VBA , eins og með INDEX & MATCH Verkefnablaðsaðgerðir í Excel VBA kóða. Þessar aðgerðir gera þér kleift að lengja VBA kóðann þinn. Ef þú veist nú þegar hvernig þeir virka í venjulegu Excel vinnublað þá er námsferillinn ekki svo mikill með því að aðlaga þekkinguna fyrir VBA . Aðgangur að verkefnablaðsaðgerðum í VBA kóða manns getur verið raunverulegur tímasparnaður. Vegna þess að maður þarf ekki að þróa sérsniðnar aðgerðir fyrir virkni sem er þegar til staðar.

Vinsamlegast ekki hika við að tjá sig og segja fráokkur ef þú notar verkefnablaðsaðgerðir í VBA kóðanum þínum og forritum.

Yfirlitshluti: Prófaðu skilning þinn

1) Settu upp einfaldan lista í A-dálki yfir þrjú atriði, nefnilega mandarínur, gulrætur og appelsínur , síðan í reitnum við hliðina á hverjum hlut í dálki B listið hvort hlutirnir í dálki A séu ávextir eða grænmeti, þegar þú hefur lokið við að setja upp sýnishornsgögnin þín skaltu nota VIÐSLUTANUM & MATCH samsetningaraðgerð til að skila hvort gulrætur eru ávextir eða grænmeti.

2) Notaðu þetta gagnasett frá ESPN um NFL yfirþjálfara og viðkomandi lið sem þeir eru að þjálfa. Búðu til notendaeyðublað sem gerir notanda kleift að setja inn nafn ákveðins þjálfara í textareit. Láttu síðan liðið sem hann þjálfar afhenda í öðrum textareit þegar notandinn smellir á senda. Notaðu INDEX & MATCH aðgerðasamsetning vinnublaðs í VBA kóðanum þínum.

Hugh West er mjög reyndur Excel þjálfari og sérfræðingur með yfir 10 ára reynslu í greininni. Hann er með BA gráðu í bókhaldi og fjármálum og meistaragráðu í viðskiptafræði. Hugh hefur ástríðu fyrir kennslu og hefur þróað einstaka kennsluaðferð sem auðvelt er að fylgja eftir og skilja. Sérfræðiþekking hans á Excel hefur hjálpað þúsundum nemenda og fagfólks um allan heim að bæta færni sína og skara fram úr í starfi. Í gegnum bloggið sitt deilir Hugh þekkingu sinni með heiminum og býður upp á ókeypis Excel námskeið og netþjálfun til að hjálpa einstaklingum og fyrirtækjum að ná fullum möguleikum.