VBA seada avaldus - Kuidas omistada objektimuutujatele väärtusi?

Lang L: none (table-of-contents)

Exceli VBA komplekti avaldus

VBA komplekt on lause, mida kasutatakse mis tahes väärtusvõtme määramiseks, öeldes objekti või viite muutujale. Selle funktsiooni abil määrame parameetri teatud muutuja jaoks, näiteks kui kirjutame komplekti M = A, mis tähendab nüüd M viitel on samad väärtused ja atribuudid, mis on sarnased A-le.

VBA-s on objekt Exceli tuum, kuna ilma objektideta ei saa me midagi teha. Objektid on töövihik, tööleht ja vahemik. Muutuja deklareerimisel peame määrama sellele andmetüübi ja objektid saame määrata ka andmetüüpidena. Deklareeritud objekti muutujatele väärtuse määramiseks peame kasutama sõna „SET”. Sõna „Set” kasutati VBA uue objekti tähistamiseks, viidates näiteks konkreetse töölehe konkreetsele vahemikule.

Kuidas kasutada Exceli VBA komplekti avaldust?

# 1 - määrake avaldus vahemiku objekti muutujatega

Oletame näiteks, et soovite vahemikku A1 kuni D5 kasutada üsna sageli. Selle asemel, et iga kord kirjutada kood vahemikuks (“A1: D5”), võime deklareerida muutuja vahemikuks ja määrata vahemiku viite vahemikuks (“A1: D5”)

1. samm: deklareerige muutuja objektiks Range.

Kood:

Alamhulk_näide ()

Hämar MyRange As Range

Lõpeta alam

2. samm: hetkel, kui määrame andmetüübiks vahemiku, kasutage sõna „Määra”.

Kood:

Alamhulk_näide () Dim MyRange As Range Set MyRange = End Sub

3. samm: mainige nüüd vahemikku.

Kood:

Alamhulk_näide () Dim MyRange As Range Set MyRange = Range ("A1: D5") End Sub

4. samm: muutuja “MyRange” võrdub vahemikuga A1 kuni D5. Selle muutuja abil saame juurde pääseda selle vahemiku kõikidele omadustele ja meetoditele.

Saame kopeerida, lisada Excelis kommentaari ja teha palju muud.

Näiteks eesmärk, olen siin loonud mõned numbrid.

Nüüd muutujat kasutades muudan fondi suuruseks 12.

Kood:

Alamhulk_näide () Hämarda Minu vahemik vahemikuna Minu vahemik = Vahemik ("A1: D5") Minu vahemik.Font.Size = 12 Lõpp-alam

See muudab määratud vahemiku fondi suurust.

Nii saame sõna „Määra” abil teha palju konkreetse vahemikuga asju.

# 2 - määrake avaldus töölehe objekti muutujatega

Oleme näinud, kuidas „set” töötab VBA vahemikuobjektiga. See töötab täpselt samamoodi nagu ka töölehe objekt.

Oletame, et teie töövihikus on 5 töölehte ja soovite jätkata ühe konkreetse töölehe juurde naasmist. Selle töölehe nimeks saate määrata määratletud objekti muutuja.

Näiteks vaadake allolevat koodi.

Kood:

Alamhulk_tööleht_näide () Hämarda Ws töölehtekomplektina Ws = töölehed ("Kokkuvõtlik leht") Lõpp

Ülalolevas koodis määratleti muutuja „Ws” kui objektimuutuja ja järgmisel real määrasime sõna „Määra“ abil muutujale tööleht nimega „Kokkuvõtlik leht“.

Selle muutuja abil saame nüüd teha kõik sellega seotud asjad. Vaadake kahte allpool olevat koodikomplekti.

# 1 - ilma „määratud“ sõnata

Kood:

Alamhulk_tööleht_näide1 () 'Lehe töölehtede ("Kokkuvõtte leht") valimiseks. Valige "Lehe töölehtede (" Kokkuvõtte leht ") aktiveerimiseks. Aktiveerige" Lehe töölehtede ("Kokkuvõtte leht") peitmiseks. Visible = xlVeryHidden' To peida leht Töölehed ("Kokkuvõtlik leht"). Visible = xlVisible End Sub

Iga kord, kui olen töölehtede objekti abil viidanud lehele “Kokkuvõtlik leht”, muudab see koodi nii pikaks ja selle kirjutamiseks on vaja palju aega.

Tohutu koodi osana on masendav kirjutada töölehe nimi niimoodi iga kord, kui peate töölehele viitama.

Nüüd heitke pilk sõna Set in Code kasutamise eelistele.

# 2 - sõnaga „Määra”

Kood:

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:

Alamkomplekt_tööraamat_näide1 () Dim Wb1 töövihikuna Dim Wb2 as Workbook Set Wb1 = töövihikud ("Müügikokkuvõtte fail 2018.xlsx") Komplekt Wb2 = töövihikud ("Müügikokkuvõtte fail 2019.xlsx") Lõpp alam

Nüüd on muutuja Wb1 võrdne töövihikuga „Müügikokkuvõtte fail 2018.xlsx” ja muutuja Wb2 võrdub töövihikuga „Müügikokkuvõtte fail 2019.xlsx”.

Selle muutuja abil pääseme tegelikult juurde kõigile töövihikuga seotud atribuutidele ja meetoditele.

Saame koodi lühendada nagu allpool.

Töövihiku aktiveerimiseks määramata märksõna:

Töövihikud ("Müügikokkuvõtte fail 2018.xlsx"). Aktiveerige

Töövihiku aktiveerimiseks märksõna määramine:

Wb1. Aktiveeri

See muudab koodipartii kirjutamise lihtsamaks ja pärast töövihiku nime määramist on muret ka töövihikute nimede kirjavigade pärast.

Huvitavad Artiklid...