Hoe kinne jo INDEX MATCH brûke mei Excel VBA

  • Diel Dit
Hugh West

Jo kinne de ynboude Excel-wurkblêdfunksjes brûke, lykas de VLOOKUP-funksje , de KIES-funksje en de PMT-funksje yn jo VBA-koade en applikaasjes lykas. Yn feite kinne de measte fan 'e Excel -wurkblêdfunksjes tagonklik en brûkt wurde yn VBA koade . Lykas gebrûk INDEX & amp; MATCH Wurkblêdfunksjes yn Excel VBA-koade.

Wêrom soene jo Excel Wurkblêd -funksjes brûke wolle yn jo VBA koade ? No om de funksjonaliteit fan 'e koade te wreidzjen dy't jo brûke. Ek hoege jo net mei jo eigen funksjes te kommen, útsein as jo echt nedich binne, as de funksjonaliteit der al is. Alles wat jo yn prinsipe hoege te dwaan is tagong te krijen ta de funksje dy't jo nedich binne, om't dy der al is en it tsjil dan net opnij útfine moat.

Sa litte wy begjinne mei in foarbyld dat lit sjen hoe't jo INDEX  MATCH brûke mei Excel VBA.

Wy sille de INDEX en MATCH funksjes brûke yn Excel VBA koade , om in ienfâldich brûkersformulier te meitsjen. Mei it formulier kiest de brûker in namme fan de studint, en dan wurdt it oerienkommende geslacht fan dy studint en eachkleur ophelle en weromjûn.

Oefenwurkboek downloade

Download it oefenwurkboek nei oefenje dysels.

INDEX-MATCH.xlsx

9 maklike stappen om INDEX en MATCH te brûken binnen VBA-koade

De INDEX en MATCH Funksjes wurde faak brûkt yn kombinaasje yn formules, om avansearre sykjen út te fieren. De twa yn kombinaasje biede bepaalde foardielen boppe VLOOKUP .

Wy hawwe al yn detail behannele hoe't jo INDEX en MATCH brûke om avansearre te dwaan opsykjen yn in Excel wurkboek as in rjochte wurkblêdformule, yn in foarige tutorial . Wy sille no sjen hoe't jo de funksjes INDEX en MATCH tegearre brûke yn VBA koade , om ferlykbere funksjonaliteit te jaan oan it opsykjen UserForm wy sille meitsje.

Stap1: Tapasse INDEX- en MATCH-funksjes yn Dataset

  • Wy begjinne mei twa blêden yn ús makro -ynskeakele wurkboek. Ien is in leech blêd mei de namme UserForm , de oare is in blêd mei de namme StudentInformation , dat in berik befettet mei learlingennammen, har oerienkommende geslacht, en eachkleur as hjirûnder werjûn.

Litte wy ússels gau herinnerje as wy de INDEX brûke woene en MATCH Funksjes yn ien formule, yn it eigentlike wurkblêd om ús it geslacht te jaan fan 'e namme fan 'e studint dy't wy opsykje wolle. Wy soene de folgjende formule brûke:

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

  • By drukken op CTRL-ENTER , krije wy de wearde fan Froulju werom, as it geslacht lykas hjirûnder werjûn.

Stap 2: Feroarje de namme fan B Column yn StudentNames

  • Wy sille no it berik A2 neame: A31 , StudentNames lykas hjirûnder werjûn.

  • It blêd Studintynformaasje ferbergje, troch mei de rjochter te klikken en te selektearjen Ferbergje. It is in goed idee om de efterkant wurkblêden dy't de ynformaasje befetsje oerflakkich te ferbergjen. jo wolle net dat de brûker bewurket of sjocht.

Stap 3: Iepenje Visual Basic Finster

  • No mei it UserForm-blêd aktivearre, geane wy ​​nei Untwikkelder & GT; Koade & GT; Visual Basic om de Visual Basic Editor (VBE) te iepenjen.
  • Ienris yn 'e VBE-ynterface geane wy ​​nei Ynfoegje, UserForm lykas hjirûnder werjûn .

Stap 4: Eigenskippen wizigje en tekstfakken taheakje

  • It gebrûk fan it Eigenskippen finster , sille wy ús formulier omneame yn StudentLookup , de titel feroarje yn Studinteynformaasje sykje, de BackColor feroarje yn ljochtblau, en de hichte ynstelle op 300 px en de breedte nei 350 px. As it eigenskippenfinster net ferskynt, druk dan op de F4 -toets op jo toetseboerd om it te sjen.

  • Wy sil no in label ynfoegje mei de Toolbox (as jo de Toolbox net kinne sjen, gean dan om ien of oare reden nei View, Toolbox ), wizigje de Caption yn Kies in studint en wy sille de BackColor nei wyt yn dit gefal. Wy sille it lettertype ynstelle op Georgia , de lettertypestyl op fet , de lettertypegrutte op 12 , enit sintrum rjochtsje de tekst út. It spesjale effekt dat brûkt wurdt sil de 1– fmSpecialEffectRaised wêze lykas hjirûnder werjûn.

  • No sille wy in kombinaasjefakje ynfoegje ûnder de etiket. Neam dizze kombinaasjefak cmdStudentName en typ foar de RowSource StudentNames.

  • Om te sjen it effekt fan it ynstellen fan de RowSource fan it kombinaasjefak, Klik de knop Run Sub/UserForm .
  • No fanwegen it ynstellen fan de RowSource nei it neamde berik, as de brûker op de dellûk pylk op it UserForm klikt, toant de kombinaasjefak de studintnammen út it neamde berik, automatysk lykas hjirûnder werjûn.

  • Slút it UserForm troch te klikken op de slute knop. Druk op Alt-F11 om werom te gean nei de VBE .
  • Ienris werom yn de VBE , foegje in oar label ta oan it brûkersformulier ( ûnder it kombinaasjefakje) en feroarje de Byskrift yn Geslacht en wy sille de BackColor yn dit gefal feroarje yn wyt. Wy sille it lettertype ynstelle op Georgia , de lettertypestyl op fet , de lettertypegrutte op 12 , en it sintrum rjochtsje de tekst . It brûkte spesjale effekt sil de 1– fmSpecialEffectRaised wêze lykas hjirûnder werjûn.

  • Meitsje in tekstfak ûnder it Geslacht label , en neam it txtGender .
  • Tafoegje in oar label mei de namme Eye Kleur en in tekstfak mei de namme txtEyeColour lykas hjirûnder werjûn. Brûk deselde eigenskippen foar it label as foar de twa oare labels dy't earder oan it formulier tafoege binne, om derfoar te soargjen dat it UserForm in konsekwint uterlik hat.

  • No Selektearje alle kontrôles, tafoege oan it UserForm , oant no ta mei de kontrôlekaai.

  • Sintraal horizontaal, lykas hjirûnder werjûn.

Lês Mear: Hoe kinne jo INDEX MATCH-formule brûke yn Excel (9 foarbylden)

Fergelykbere lêzingen

  • Excel INDEX MATCH As sel tekst befettet
  • Hoe kinne jo INDEX-MATCH-formule yn Excel brûke om meardere resultaten te generearjen
  • Yndeks-oerienkomstsom meardere rigen yn Excel (3 manieren)
  • Learje Excel VBA-programmearring & Makro's (Fergees Tutorial - Stap foar stap)
  • 22 Macro-foarbylden yn Excel VBA

Stap 5: Foegje in knop ta fan Toolbox

  • Folgjende, Foegje in knop ta oan it formulier mei de Toolbox . Feroarje de Namme fan de knop yn cmdLookUp , de BackColor yn ljocht oranje, hâld it Tahoma lettertype en feroarje de styl yn fet , feroarje úteinlik de Byskrift fan de knop yn Sjoch op Studint Details lykas hjirûnder werjûn.

Stap 6: VBA-koade ynfoegje

  • Rjochts-klikke , de nij tafoege knop, en selektearje Besjoch Koade .

  • Fier de folgjende koade yn foar de knop klik barren:

3869

Wy begjinne troch trije fariabelen te ferklearjen en it fariantgegevenstype ta te jaan oan dizze ferklearre fariant gegevens typen. It fariant gegevenstype is in goed gegevenstype om mei te begjinnen. Want by it wurkjen mei wurkblêd funksjes binne jo miskien net altyd wis fan de útgongen. Brûk dêrom it fariant gegevenstype, as jo begjinne.

Letter is it oan te rieden om ien fan 'e oare mear spesifike gegevenstypen te brûken lykas integer of string. Foar mear avansearre langere koade, brûkt it fariant gegevenstype ûnthâld net sa effisjint as de oare gegevenstypen.

Fariabele a tekenje de wearde út de opsje dy't de brûker selektearret yn 'e drop-down kombinaasjefak op it UserForm . As der gjin seleksje is, dan binne alle oare tekstfakken leech .

As jo ​​in studintnamme selektearje út it kombinaasje fak op de UserForm, dan tekenet fariabele b wearde troch de funksje INDEX Wurksheet te brûken yn kombinaasje mei de MATCH funksje yn de VBA -koade, lykas werjûn.

It siket de wearde op mei yn prinsipe deselde syntaksis as de wurkblêdfunksje. By it brûken fan wurkblêdfunksjes yn VBA , is de VBA IntelliSense yn dit bysûndere gefal net tige yntuïtyf , dus bekend meide syntaksis helle út wurkblêdkennis wurdt oanrikkemandearre. Fariabele c tekent wearde troch it brûken fan de INDEX Wurkblêd Funksje yn kombinaasje mei de MATCH funksje yn de VBA -koade as de brûker in opsje selektearret út it kombinaasjefak.

Fariabele b berikt wearde fan it geslacht kolom yn it wurkblêd, wylst fariabele c wearde krijt fan 'e kolom Eye color yn it wurkblêd.

It geslacht tekstfak wurdt befolke mei b 's wearde en it tekstfak foar eagenkleur wurdt befolke mei de wearde fan c .

Lês mear: Excel VBA-eveneminten (in folsleine rjochtline)

Stap 7: In kommandoknop ynfoegje

  • Gean no nei it wurkblêd mei de namme UserForm yn jo wurkboek. Formatearje it, lykas hjirûnder werjûn, en ynfoegje de ôfbylding levere troch ExcelWIKI .

  • Gean nei Untwikkelder > Kontrôles & GT; Ynfoegje & GT; ActiveX-kontrôles.

  • Foegje in knop yn lykas werjûn.

  • Mei de selektearre knop, gean nei ûntwikkelder > Kontrôles & GT; Eigenskippen .

  • Feroarje de Namme fan de knop yn cmdShowForm en de Byskrift foar Opsykje Studintynformaasje .

Stap 8: Besjoch Sykje Code

  • Rjochts-klikke op de knop en selektearje Koade werjaan lykas werjûnhjirûnder.

  • Fier de folgjende koade yn:
2481

Stap 9: Útstalling einresultaat

  • Werom nei it wurkblêd. Soargje derfoar dat de net selektearre Ontwerp Modus .
  • Klik op de knop om it formulier sjen te litten.

  • Selektearje de namme fan in studint mei it kombinaasjefak . De koade sil it geslacht en eachkleur fan de studint automatysk weromjaan.

Tink derom om jo wurkboek op te slaan as in makro-ynskeakele wurkboek , as jo hawwe net dien dat al en dêr do hast it, wy brûke INDEX & amp; MATCH-wurkblêdfunksjes yn Excel VBA-koade om in opsykformulier te meitsjen.

Lês mear: Excel INDEX-MATCH Formule om meardere wearden horizontaal werom te jaan

Konklúzje

Excel hat in protte nuttige wurkblêdfunksjes , dy't brûkt wurde kinne yn VBA , lykas, mei INDEX & amp; MATCH Wurkblêdfunksjes yn Excel VBA-koade. Dizze funksjes kinne jo jo VBA koade útwreidzje. As jo ​​al witte hoe't se wurkje yn in standert Excel wurkblêd dan is de learkurve net sa grut troch it oanpassen fan de kennis foar VBA . Tagong ta de wurkblêdfunksjes, yn ien's VBA koade kin in echte tiidbesparring wêze. Want men hoecht gjin oanpaste funksjes te ûntwikkeljen foar funksjonaliteit dy't der al is.

Fiel jo frij om kommentaar te jaan en te fertellenus as jo wurkblêdfunksjes brûke yn jo VBA-koade en applikaasjes.

Review Seksje: Testje jo ferstân

1) Stel in ienfâldige list yn kolom A op fan trije items nammentlik mandarinen, woartels en sinaasappels , dan yn 'e sel neist elk item yn kolom B list oft de items yn kolom A binne fruit of grienten, as jo hawwe foltôge it ynstellen fan jo sample gegevens, brûk de INDEX & amp; MATCH -kombinaasjefunksje om te leverjen oft woartels fruit of griente binne.

2) Brûk dizze gegevensset fan ESPN oer de NFL-haadcoaches en it respektivelike team dat se coachje. Meitsje in brûkersformulier wêrmei in brûker de namme fan in bepaalde coach yn in tekstfak kin ynfiere. Lit dan it team dat hy coacht yn in oar tekstfak leverje as de brûker op yntsjinje klikt. Brûk INDEX & amp; MATCH wurkblêdfunksjekombinaasje binnen jo VBA-koade.

Hugh West is in tige betûfte Excel-trainer en analist mei mear as 10 jier ûnderfining yn 'e yndustry. Hy hat in bachelorstitel yn boekhâlding en finânsjes en in masterstitel yn bedriuwsadministraasje. Hugh hat in passy foar lesjaan en hat in unike lesoanpak ûntwikkele dy't maklik te folgjen en te begripen is. Syn saakkundige kennis fan Excel hat tûzenen studinten en professionals wrâldwiid holpen har feardigens te ferbetterjen en útblinke yn har karriêre. Troch syn blog dielt Hugh syn kennis mei de wrâld, en biedt fergese Excel-tutorials en online training om partikulieren en bedriuwen te helpen har folsleine potensjeel te berikken.