VBA-sanakirja | Opas työskentelyyn Excel VBA-sanakirjojen kanssa

Excel VBA-sanakirja

VBA-sanakirjaa käyttämällä voimme ryhmitellä kaikenlaisia ​​tietoja sanakirjaan, jotta pääsemme kaikkiin kohteisiin yhdellä muuttujalla. Voimme sanakirjan avulla luoda kokoelman avain-arvo-yhdistelmiä. Kun objekti on linkitetty avaimiin, voimme myöhemmin soittaa heille vain avaimen nimellä.

VBA-sanakirja on erittäin vaikea päästä sisälle, mutta yritämme parhaamme tasoamme helpottaaksemme sinua. Voimme verrata sekä Sanakirjaa että Kokoelmaa samassa mittakaavassa, mutta jotkut VBA-sanakirjoista tarjoavat joitain toimintoja, jotka eivät ole käytettävissä VBA Collections -objektin kanssa.

Työskentely VBA-sanakirjojen kanssa

Jotta voisimme työskennellä VBA-sanakirjojen kanssa, meidän on ensin asetettava objektiviittaukseksi "Microsoft Scripting Runtime".

Aseta viite noudattamalla seuraavia vaiheita.

Vaihe 1: Valitse Työkalut> Viitteet.

Vaihe 2: Vieritä alaspäin ja valitse Microsoft Scripting Runtime -vaihtoehto ja napsauta sitten OK.

Nyt voimme käyttää VBA-sanakirjaa komentosarjakirjastolla.

Voit ladata tämän VBA Dictionary Excel -mallin täältä - VBA Dictionary Excel -malli

Luo sanakirjan esiintymä VBA-koodilla

Kun olet asettanut viittauksen Microsoft Scripting Runtime -ohjelmaan, meidän on luotava VBA-sanakirjan esiintymä. Ilmoita ensin muuttuja nimellä Scripting.Dictionary

Koodi:

 Sub Dict_Example1 () Dim Dict as Scripting.Dictionary End Sub

Nyt muuttuja “Dict” on objektimuuttuja. Objektimuuttujalle meidän on asetettava objektiviite käyttämällä sanaa "Uusi".

Aseta Dict = Uusi komentosarja. Sanakirja

Nyt voimme käyttää kaikkia sanakirjan ominaisuuksia ja menetelmiä.

Huomaa: Kaikki vihreällä napitetut sanat ovat Methods ja muut Properties.

Ilmoita nyt yksi muuttuja nimellä DictResult.

Dim DictTulos vaihtelevana

Nyt luodaan uusi avain "Dict" -muuttujan avulla.

Tärkeintä on se sana, jonka lisäämme. Lisätään matkapuhelimen nimeksi ”Redmi”.

Kohde ei ole muuta kuin lisäämämme sanan ( avain ) määritelmä . Tämä puhelimen määritelmä on sen hinta, joten lisätään hinta 15000: een.

Seuraavaksi muuttuja "DictResult" lisätään avainsana käyttämällä "Dict" -muuttujaa.

Avain on sana, jonka olemme luoneet edellisessä vaiheessa, eli puhelimen nimi.

Nyt muuttujassa “DictResult” on lisätty avaimen kohde. Näytä nyt muuttujan tulos VBA-viestiruudussa.

Koodi:

 Sub Dict_Example1 () Dim Dict as Scripting.Dictionary Set Dict = New Scripting.Dictionary Dim DictResult As Variant Dict.Add Key: = "Redmi", Item: = 15000 DictResult = Dict ("Redmi") MsgBox DictResult End Sub 

Suorita koodi nyt manuaalisesti tai F5-näppäimellä. Viestiruutu näyttää puhelimen ( näppäimen ) hinnan ( nimikkeen ), jonka olemme lisänneet "Dict" -toiminnolla.

Ymmärtäminen AVAIMET JA KOHTEET

Jos et ole ymmärtänyt AVAIMET JA KOHTEET, anna minun selittää sinulle yksinkertainen esimerkki. Kuvittele tosielämän sanakirjaa, tällä sanakirjalla meillä on sanat (avaimet) ja näiden sanojen merkitys (kohde). Vastaavasti sanat ovat avaimet ja määritelmä tai merkitys on kohde.

Katso nyt vielä yksi esimerkki sanakirjasta. Oletetaan, että etsit tietyn henkilön puhelinnumeroa. Kuinka etsit?

Ilmeisesti käyttämällä nimeä, jota olemme käyttäneet puhelinnumeroa tallennettaessa. Tässä meillä on kaksi asiaa, joista yksi on henkilön nimi ja toinen on puhelinnumero.

Henkilön nimi on avain.

Puhelinnumero on kohde.

Jos haluat esimerkin Excelistä, voimme antaa esimerkin VLOOKUP. Kaavan avulla etsimme arvoja LOOKUP VALUE (Key) -arvon perusteella . VLOOKUP-toiminnon palauttama tulos on nimeltään Kohde.

Tarkista onko matkapuhelin siellä vai ei

Kuvittele, että annat asiakkaillesi käyttäjälomakkeen tarkistaaksesi matkapuhelimen hinnan yksinkertaisella syöttöruudulla. Excelin VBA-koodin alapuolella näkyy syöttölaatikko käyttäjän edessä ja heidän on annettava etsimänsä puhelimen merkki. Jos tuotenimi on sanakirjassa, se näyttää kyseisen puhelimen hinnan tai muuten näytä viesti nimellä "Etsittävää puhelinta ei ole kirjastossa".

Koodi:

 Sub Dict_Example2 () Himmennä PhoneDict komentosarjana.Sanakirja Dim DictResult Variant -asetuksena Set PhoneDict = Uusi komentosarja.Sanakirja PhoneDict.Add-avain: = "Redmi", Kohde: = 15000 PhoneDict.Add-avain: = "Samsung", Kohde: = 25000 PhoneDict .Lisäavain: = "Oppo", Kohde: = 20000 PhoneDict.Add-avain: = "VIVO", Kohde: = 21000 PhoneDict.Add-avain: = "Jio", Kohde: = 2500 DictResult = Application.InputBox (Kysely: = "Anna puhelinnimi"), jos PhoneDict.Exist (DictResult) Sitten MsgBox "Puhelimen hinta" & DictResult & "on:" & PhoneDict (DictResult) Muu MsgBox "Etsitkö puhelinta ei ole Kirjasto "End If End Sub 

Suorita tämä koodi F5-näppäimellä tai manuaalisesti ja katso tulos.


$config[zx-auto] not found$config[zx-overlay] not found