VBA Delo z delovnimi zvezki (predmet delovnega zvezka)

Ta priročnik vam bo predstavil delo z Objekt delovnega zvezka v VBA.

Objekt delovnega zvezka

Najprej morate za interakcijo z delovnimi zvezki v VBA razumeti Objekt delovnega zvezka.

Z objektom delovnega zvezka se lahko na delovne zvezke sklicujete po njihovem imenu takole:

1 Delovni zvezki ("Book2.xlsm"). Aktivirajte

Ta koda pa bo delovala le, če je delovni zvezek odprt. Če je delovni zvezek zaprt, boste morali navesti celotno pot delovnega zvezka:

1 Workbooks.Open ("C: \ Users \ StevePC2 \ Downloads \ book2.xlsm")

Namesto da vnesete celotno pot, če je vaš želeni delovni zvezek v istem imeniku kot delovni zvezek, v katerem je shranjena vaša koda, lahko za odpiranje delovnega zvezka uporabite to kodo vrstice:

1 Workbooks.Open (ThisWorkbook.Path & "\ book2.xlsm")

Pri tem se uporablja predmet ThisWorkbook, o katerem bomo razpravljali v naslednjem razdelku.

Indeksna številka delovnega zvezka

Nazadnje se lahko na delovne zvezke sklicujete po njihovi »indeksni številki«. Indeksna številka delovnega zvezka ustreza vrstnemu redu odpiranja delovnega zvezka (tehnično je to njegov položaj v zbirki delovnih zvezkov).

1 Delovni zvezki (1). Aktivirajte

To je uporabno, če želite narediti nekaj na primer zapreti prvi (ali zadnji) odprti delovni zvezek.

Aktivirajte delovni zvezek, ActiveWorkbook in ThisWorkbook

Če je delovni zvezek NI AKTIVNO, do objektov delovnega zvezka lahko dostopate tako:

1 Delovni zvezki ("Book2.xlsm"). Listi ("List1"). Razpon ("A1"). Vrednost = 1

Če pa je delovni zvezek aktiven, lahko predmet delovnega zvezka izpustite:

1 Listi ("List1"). Obseg ("A1"). Vrednost = 1

Če želite komunicirati z aktivnim listom delovnega zvezka, lahko izpustite tudi predmet listov:

1 Razpon ("A1"). Vrednost = 1

Aktivirajte delovni zvezek

Če želite aktivirati delovni zvezek, uporabite Aktiviraj metodo.

1 Delovni zvezki ("Book2.xlsm"). Aktivirajte

Zdaj lahko komunicirate s predmetom Book2, ne da bi izrecno navedli ime delovnega zvezka.

ActiveWorkbook

The ActiveWorkbook predmet se vedno sklicujejo na aktivni delovni zvezek. To je uporabno, če želite ActiveWorkbook dodeliti spremenljivki, ki jo boste uporabili pozneje.

12 Dim wb Kot delovni zvezekNastavite wb = ActiveWorkbook

Ta delovni zvezek

The Ta delovni zvezek objekt se vedno nanaša na delovni zvezek, kjer je shranjena tekaška koda. Če želite aktivirati to delovno knjigo, uporabite to vrstico kode:

1 ThisWorkbook.Aktiviraj

Odprite delovni zvezek

Če želite odpreti delovni zvezek, uporabite Odprta metoda:

1 Workbooks.Open ("C: \ Users \ StevePC2 \ Downloads \ book2.xlsm")

Na novo odprti delovni zvezek bo vedno postal ActiveWorkbook, ki vam omogoča enostavno interakcijo z njim.

1 ActiveWorkbook.Save

Odprta metoda ima več drugih argumentov, ki vam omogočajo odpiranje samo za branje, odpiranje gesla zaščitenega delovnega zvezka in drugo. Tukaj je opisano v našem članku o odpiranju / zapiranju delovnih zvezkov.

Odpri in dodeli spremenljivki

Prav tako lahko odprete delovni zvezek in ga hkrati dodelite spremenljivki:

12 Dim wb Kot delovni zvezekSet wb = Workbooks.Open ("C: \ Users \ StevePC2 \ Downloads \ book2.xlsm")

Odprite pogovorno okno datotek

Odprete lahko tudi pogovorno okno Odpri datoteko:

12345678 Sub OpenWorkbook ()Zatemni strFile As StringstrFile = Application.GetOpenFilename ()Delovni zvezki. Odpri (strFile)End Sub

Ustvari nov (Dodaj) delovni zvezek

Ta vrstica kode bo ustvarila nov delovni zvezek:

1 Delovni zvezki.Dodaj

Novi delovni zvezek zdaj postane ActiveWorkbook, ki vam omogoča interakcijo z njim (npr. shranite nov delovni zvezek).

V spremenljivko dodajte nov delovni zvezek

Nov delovni zvezek lahko dodate tudi neposredno spremenljivki:

12 Dim wb Kot delovni zvezekNastavi wb = Delovni zvezki.Dodaj

Zaprite delovni zvezek

Zapri in shrani

Če želite shraniti delovni zvezek, uporabite Metoda zapiranja z Shrani spremembe nastavljeno na TRUE:

1 ActiveWorkbook.Close SaveChanges: = True

Zapri brez shranjevanja

Če želite zapreti brez shranjevanja, nastavite Shrani spremembe enako FALSE:

1 ActiveWorkbook.Close SaveChanges: = False

Delovni zvezek Shrani kot

The Metoda SaveAs se uporablja za shranjevanje delovnega zvezka kot.

Če želite shraniti delovni zvezek z novim imenom v istem imeniku, lahko uporabite to:

1 ActiveWorkbook.SaveAs "new"

kjer je "novo" novo ime datoteke.

Če želite shraniti delovni zvezek v nov imenik z določeno pripono datoteke, preprosto podajte nov imenik in ime datoteke:

1 ActiveWorkbook.SaveAs "C: \ Users \ StevePC2 \ Downloads \ new.xlsm"

Drugi primeri VBA delovnega zvezka

Ime delovnega zvezka

Če želite dobiti ime delovnega zvezka:

1 MsgBox ActiveWorkbook.Name

Zaščitite delovni zvezek

Za zaščito strukture delovnega zvezka pred urejanjem lahko uporabite datoteko Metoda zaščite (geslo neobvezno):

1 Delovni zvezki ("book1.xlsm"). Zaščitite "geslo"

Če želite odstraniti zaščito delovnega zvezka, uporabite Metoda UnProtect:

1 Delovni zvezki ("book1.xlsm"). Odstrani zaščito "gesla"

Prelistajte vse odprte delovne zvezke

Če želite prelistati vse odprte delovne zvezke:

123456789 Sub LoopThroughWBs ()Dim wb Kot delovni zvezekZa vsako wb v delovnih zvezkihMsgBox wb.NameNaslednja wbEnd Sub

Delovni zvezek Aktiviraj dogodek

Kodo lahko zaženete vsakič, ko se z datoteko Odprti dogodek delovnega zvezka.

Ta postopek postavite v modul tega delovnega zvezka v delovnem zvezku:

123 Private Sub Workbook_Open ()Listi ("list1"). AktivirajteEnd Sub

Ta postopek se aktivira List1 vsakič, ko odprete delovni zvezek.

Vam bo pomagal razvoj spletnega mesta, ki si delijo stran s svojimi prijatelji

wave wave wave wave wave