VBA töövihikutega töötamine (töövihiku objekt)

See juhend tutvustab teile seadmega töötamist Töövihiku objekt VBA -s.

Töövihiku objekt

Esiteks peate VBA töövihikutega suhtlemiseks mõistma Töövihiku objekt.

Töövihikuobjektiga saate viidata töövihikutele nende nime järgi järgmiselt:

1 Töövihikud ("Book2.xlsm"). Aktiveeri

See kood töötab aga ainult siis, kui töövihik on avatud. Kui töövihik on suletud, peate esitama kogu töövihiku tee:

1 Töövihikud.Open ("C: \ Users \ StevePC2 \ Downloads \ book2.xlsm")

Kui teie soovitud töövihik asub samas kataloogis töövihikuga, kuhu teie kood on salvestatud, võite täieliku tee väljakirjutamise asemel töövihiku avamiseks kasutada järgmist reakoodi:

1 Töövihikud. Ava (ThisWorkbook.Path & "\ book2.xlsm")

See kasutab objekti ThisWorkbook, mida käsitleme järgmises osas.

Töövihiku registrinumber

Lõpuks saate töövihikutele viidata nende indeksnumbri järgi. Töövihiku registrinumber vastab töövihiku avamise järjekorrale (tehniliselt selle töövihiku asukoht töövihikute kogumis).

1 Töövihikud (1). Aktiveeri

See on kasulik, kui soovite teha näiteks esimese (või viimase) avatud töövihiku sulgemise.

Aktiveerige töövihik, ActiveWorkbook ja ThisWorkbook

Kui töövihik on EI AKTIIVNE, pääsete juurde töövihiku objektidele järgmiselt:

1 Töövihikud ("Book2.xlsm"). Arvutustabelid ("Sheet1"). Vahemik ("A1"). Väärtus = 1

Kui aga töövihik on aktiivne, võite töövihiku objekti välja jätta:

1 Arvutustabelid ("leht 1"). Vahemik ("A1"). Väärtus = 1

Ja kui soovite suhelda töövihiku aktiivse lehega, saate lehtede objekti ka tühistada:

1 Vahemik ("A1"). Väärtus = 1

Töövihiku aktiveerimine

Töövihiku aktiveerimiseks kasutage Aktiveeri meetod.

1 Töövihikud ("Book2.xlsm"). Aktiveeri

Nüüd saate Book2 objektiga suhelda ilma töövihiku nime selgesõnaliselt nimetamata.

ActiveWorkbook

The ActiveWorkbook objekt viitab alati aktiivsele töövihikule. See on kasulik, kui soovite määrata ActiveWorkbooki muutujale, et seda hiljem kasutada.

12 Dim wb TöövihikunaMäära wb = ActiveWorkbook

See tööraamat

The See tööraamat objekt viitab alati töövihikule, kuhu jooksev kood on salvestatud. Selle töövihiku aktiveerimiseks kasutage järgmist koodirida:

1 See töövihik. Aktiveeri

Avage töövihik

Töövihiku avamiseks kasutage Avatud meetod:

1 Töövihikud.Open ("C: \ Users \ StevePC2 \ Downloads \ book2.xlsm")

Äsja avatud töövihikust saab alati ActiveWorkbook, mis võimaldab teil sellega hõlpsalt suhelda.

1 ActiveWorkbook.Save

Avatud meetodil on mitmeid muid argumente, mis võimaldavad teil avada kirjutuskaitstud, avada parooliga kaitstud töövihiku ja palju muud. Seda käsitletakse siin meie artiklis töövihikute avamise / sulgemise kohta.

Avage ja määrake muutujale

Samuti saate avada töövihiku ja määrata selle muutujale samal ajal.

12 Dim wb TöövihikunaMäära wb = Töövihikud. Ava ("C: \ Users \ StevePC2 \ Downloads \ book2.xlsm")

Avage failidialoog

Samuti saate käivitada avatud faili dialoogiboksi järgmiselt.

12345678 Alamtööraamat ()Dim strFile kui stringstrFile = Application.GetOpenFilename ()Töövihikud. Avatud (strFile)End Sub

Loo uus (lisa) töövihik

See koodirida loob uue töövihiku:

1 Töövihikud. Lisa

Uus töövihik muutub nüüd ActiveWorkbook, mis võimaldab teil sellega suhelda (nt uue töövihiku salvestamine).

Lisage muutujale uus töövihik

Samuti saate uue töövihiku otse muutujale lisada.

12 Dim wb TöövihikunaMäära wb = Töövihikud. Lisa

Sulgege töövihik

Sulge ja salvesta

Töövihiku salvestamiseks sulgemiseks kasutage Sule meetod koos Salvesta muudatused seadistatud väärtusele TRUE:

1 ActiveWorkbook.Sulge SaveChanges: = Tõsi

Sulge ilma salvestamiseta

Salvestamata salvestamiseks sulgege Salvesta muudatused võrdne valega:

1 ActiveWorkbook.Close SaveChanges: = Vale

Töövihik Salvesta nimega

The SaveAs meetod kasutatakse töövihiku salvestamiseks nimega.

Uue nimega töövihiku salvestamiseks samasse kataloogi saate kasutada järgmist:

1 ActiveWorkbook.SaveAs "new"

kus "uus" on uue faili nimi.

Töövihiku salvestamiseks uude kataloogi koos konkreetse faililaiendiga määrake lihtsalt uus kataloog ja faili nimi:

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

Muud töövihiku VBA näited

Töövihiku nimi

Töövihiku nime saamiseks tehke järgmist.

1 MsgBox ActiveWorkbook.Name

Kaitske töövihikut

Töövihiku struktuuri muutmise eest kaitsmiseks võite kasutada Kaitsemeetod (parool pole kohustuslik):

1 Töövihikud ("book1.xlsm"). Kaitske parooli

Töövihiku kaitsest vabastamiseks kasutage Kaitse eemaldamise meetod:

1 Töövihikud ("book1.xlsm"). Tühistage "parooli" kaitse

Sirvige kõiki avatud töövihikuid

Kõigi avatud töövihikute sirvimiseks tehke järgmist.

123456789 Sub LoopThroughWBs ()Dim wb TöövihikunaIga wb kohta töövihikutesMsgBox wb. NimiJärgmine wbEnd Sub

Töövihiku aktiveerimise sündmus

Mõnda koodi saate käivitada alati, kui konkreetne töövihik avatakse Töövihiku avatud sündmus.

Asetage see protseduur oma töövihiku ThisWorkbook moodulisse:

123 Privaatne alamtöövihik_Avatud ()Arvutustabelid ("leht1"). AktiveerigeEnd Sub

See protseduur aktiveerub Leht1 iga kord, kui töövihik avatakse.

wave wave wave wave wave