VBA asettaa lausunto - Kuinka määrittää arvoja objektimuuttujille?

Sisällysluettelo

Excel VBA -joukko

VBA-sarja on käsky, jota käytetään minkä tahansa arvoavaimen määrittämiseen sanoo objektin tai viittauksen muuttujaan. Tätä funktiota käytetään määrittämään parametrin tietylle muuttujalle, esimerkiksi jos kirjoitamme joukon M = A, mikä tarkoittaa nyt M viitteellä on samat arvot ja attribuutit, jotka ovat samanlaisia ​​kuin A: lla.

VBA: ssa esine on Excelin ydin, koska ilman esineitä emme voi tehdä mitään. Objektit ovat työkirja, laskentataulukko ja alue. Kun ilmoitamme muuttujan, meidän on määritettävä sille tietotyyppi ja voimme myös määrittää objekteja tietotyypeiksi. Arvon määrittämiseksi ilmoitetuille objektimuuttujille meidän on käytettävä sanaa ”SET”. Sana "Aseta" käytetään viittaamaan uuteen objektiin VBA: ssa esimerkiksi viitaten tietyn laskentataulukon tiettyyn alueeseen.

Kuinka käyttää Excel VBA Set Statementia?

# 1 - Aseta lause lauseobjektimuuttujilla

Oletetaan esimerkiksi, että haluat käyttää aluetta A1 - D5 melko usein. Sen sijaan, että kirjoittaisimme koodin Range-alueeksi (“A1: D5”) joka kerta, voimme julistaa muuttujan alueeksi ja asettaa alueen referenssiksi Range (“A1: D5”)

Vaihe 1: Ilmoita muuttuja Range-objektiksi.

Koodi:

Alaryhmä_esimerkki ()

Hämärä alue-alue

End Sub

Vaihe 2: Kun määritämme tietotyypin alueeksi, käytä sanaa "Aseta".

Koodi:

Alaryhmä_esimerkki () Himmennä Oma alue alueeksi Aseta Oma alue = Lopeta ali

Vaihe 3: Mainitse nyt alue.

Koodi:

Alaryhmä_esimerkki () Himmennä Oma alue alueeksi Aseta Oma alue = Alue ("A1: D5") Loppu alialue

Vaihe 4: Muuttuja “MyRange” on nyt yhtä suuri kuin alue A1 - D5. Tämän muuttujan avulla voimme käyttää kaikkia tämän alueen ominaisuuksia ja menetelmiä.

Voimme kopioida, lisätä kommentin Excelissä ja tehdä monia muita asioita.

Esimerkiksi tarkoitukseen, olen luonut joitain numeroita täällä.

Nyt muuttujaa käytettäessä vaihdan kirjasinkoon 12: ksi.

Koodi:

Alajoukko_esimerkki () Himmennä Oma alue alueeksi Aseta Oma alue = Alue ("A1: D5") Oma Alue.Font.Koko = 12 Loppu Osa

Tämä muuttaa määritetyn alueen kirjasinkokoa.

Tällä tavoin voimme tehdä monia asioita tietyllä alueella käyttämällä sanaa "Aseta".

# 2 - Aseta lauseke laskentataulukon objektimuuttujilla

Olemme nähneet, kuinka “set” toimii alueobjektin kanssa VBA: ssa. Se toimii täsmälleen samalla tavalla kuin laskentataulukko-objekti.

Oletetaan, että työkirjassasi on 5 laskentataulukkoa ja haluat palata takaisin yhteen tiettyyn laskentataulukkoon. Voit asettaa kyseisen laskentataulukon nimen määritetylle objektimuuttujalle.

Katso esimerkiksi alla oleva koodi.

Koodi:

Alajoukko_Työkirja_esimerkki () Himmennä Ws laskentataulukkoa Ws = Laskentataulukot ("Yhteenvetoarkki") Loppu

Yllä olevassa koodissa muuttuja "Ws" määriteltiin olomuuttujaksi , ja seuraavalla rivillä asetetaan muuttuja käyttämällä sanaa "Aseta" laskentataulukko nimeltä "Yhteenvetoarkki".

Tämän muuttujan avulla voimme nyt tehdä kaikki siihen liittyvät asiat. Katso alla olevat kaksi koodisarjaa.

# 1 - ilman “Aseta” -sanaa

Koodi:

Alajoukko_Työkirja_esimerkki1 () 'Arkin laskentataulukoiden ("Yhteenvetotaulukko") valitsemiseksi. Valitse "Aktivoi taulukon laskentataulukot (" Yhteenvetotaulukko "). Aktivoi" Piilota taulukon laskentataulukot ("Yhteenvetotaulukko"). Visible = xlVeryHidden' Näytä taulukko ("Yhteenvetotaulukko") näkyviin. Visible = xlVisible End Sub

Joka kerta, kun olen käyttänyt laskentataulukko-objektia viitaten arkkiin "Yhteenvetoarkki", tämä tekee koodista niin pitkän ja vaatii paljon aikaa kirjoittaa.

Osana valtavaa koodia on turhauttavaa kirjoittaa taulukkonimi näin joka kerta, kun sinun on viitattava laskentataulukkoon.

Katsokaa nyt Set in Code -sanan käytön etua.

# 2 - ”Aseta” -sanalla

Koodi:

Sub Set_Worksheet_Example() Dim Ws As Worksheet Set Ws = Worksheets("Summary Sheet") 'To select the sheet Ws.Select 'To Activate the sheet Ws.Activate 'To hide the sheet Ws.Visible = xlVeryHidden 'To unhide the sheet Ws.Visible = xlVisible End Sub

The moment we set the worksheet name, we can see the variable name while entering the code as part of the list.

#3 - Set Statement with Workbook Object Variables

The real advantage of the word “Set” in VBA arises when we need to reference different workbooks.

When we work with different workbooks, it is so hard to type in the full name of the workbook, along with its file extension.

Assume you have two different workbooks named “Sales Summary File 2018.xlsx” and “Sales Summary File 2019.xlsx” we can set the two workbooks like the below code.

Code:

Alaryhmä_Työkirja_esimerkki1 () Himmennä Wb1 työkirjana Dim Wb2 Kuten työkirjapaketti Wb1 = Työkirjat ("Myynnin yhteenvetotiedosto 2018.xlsx") Aseta Wb2 = Työkirjat ("Myynnin yhteenvetotiedosto 2019.xlsx") Loppu

Muuttuja Wb1 on nyt yhtä suuri kuin työkirja nimeltä Myynnin yhteenvetotiedosto 2018.xlsx, ja muuttuja Wb2 on yhtä suuri kuin työkirja nimeltä Myynnin yhteenvetotiedosto 2019.xlsx.

Tämän muuttujan avulla voimme todella käyttää kaikkia työkirjaan liittyviä ominaisuuksia ja menetelmiä.

Voimme lyhentää koodia kuten alla.

Käyttämättä Työkirjan aktivoimiseksi Aseta avainsana -vaihtoehtoa:

Työkirjat ("Myynnin yhteenvetotiedosto 2018.xlsx"). Aktivoi

Työkirjan aktivoiminen Aseta avainsana -toiminnon avulla:

Aktivoi

Tämä tekee koodierän kirjoittamisesta yksinkertaisempaa, ja kun työkirjan nimi on asetettu, työkirjeen nimissä on kirjoitusvirheitä.

Mielenkiintoisia artikkeleita...