Tämä opas esittelee sinulle työskentelyn Työkirjan objekti VBA: ssa.
Työkirjan objekti
Ensinnäkin, jotta voit olla vuorovaikutuksessa VBA: n työkirjojen kanssa, sinun on ymmärrettävä Työkirjan objekti.
Työkirjaobjektin avulla voit viitata työkirjoihin niiden nimellä seuraavasti:
1 | Työkirjat ("Kirja2.xlsm"). Aktivoi |
Tämä koodi toimii kuitenkin vain, jos työkirja on auki. Jos työkirja on suljettu, sinun on annettava työkirjan koko polku:
1 | Työkirjat.Open ("C: \ Users \ StevePC2 \ Downloads \ book2.xlsm") |
Koko polun kirjoittamisen sijaan, jos haluamasi työkirja on samassa hakemistossa kuin työkirja, johon koodisi on tallennettu, voit avata työkirjan tällä rivikoodilla:
1 | Työkirjat.Open (ThisWorkbook.Path & "\ book2.xlsm") |
Tämä hyödyntää ThisWorkbook -objektia, josta keskustelemme seuraavassa osassa.
Työkirjan hakemistonumero
Lopuksi voit viitata työkirjoihin niiden indeksinumeron perusteella. Työkirjan hakemistonumero vastaa työkirjan avausjärjestystä (teknisesti sen työkirjan sijainti työkirjakokoelmassa).
1 | Työkirjat (1) Aktivoi |
Tästä on hyötyä, jos haluat esimerkiksi sulkea ensimmäisen (tai viimeisen) avatun työkirjan.
Aktivoi työkirja, ActiveWorkbook ja ThisWorkbook
Jos työkirja on EI AKTIIVINEN, voit käyttää työkirjan objekteja seuraavasti:
1 | Työkirjat ("Kirja2.xlsm"). Taulukot ("Taulukko1"). Alue ("A1"). Arvo = 1 |
Jos työkirja on kuitenkin aktiivinen, voit jättää työkirjaobjektin pois:
1 | Sheets ("Sheet1"). Alue ("A1"). Arvo = 1 |
Ja jos haluat olla vuorovaikutuksessa työkirjan aktiivisen taulukon kanssa, voit myös poistaa arkkiobjektin:
1 | Alue ("A1"). Arvo = 1 |
Aktivoi työkirja
Aktivoi työkirja käyttämällä Aktivoi menetelmä.
1 | Työkirjat ("Kirja2.xlsm"). Aktivoi |
Nyt voit olla vuorovaikutuksessa Book2 -objektin kanssa ilmoittamatta nimenomaisesti työkirjan nimeä.
ActiveWorkbook
The ActiveWorkbook viittaa aina aktiiviseen työkirjaan. Tästä on hyötyä, jos haluat määrittää ActiveWorkbookin muuttujaan käytettäväksi myöhemmin.
12 | Dim wb TyökirjanaAseta wb = ActiveWorkbook |
Tämä työkirja
The Tämä työkirja objekti viittaa aina työkirjaan, johon juokseva koodi on tallennettu. Aktivoi tämä työkirja käyttämällä tätä koodiriviä:
1 | Tämä työkirja |
Avaa työkirja
Avaa työkirja käyttämällä Avaa menetelmä:
1 | Työkirjat.Open ("C: \ Users \ StevePC2 \ Downloads \ book2.xlsm") |
Äskettäin avatusta työkirjasta tulee aina ActiveWorkbook, jonka avulla voit olla helposti vuorovaikutuksessa sen kanssa.
1 | ActiveWorkbook.Save |
Avoimella menetelmällä on useita muita argumentteja, joiden avulla voit avata vain luku -toiminnon, avata salasanalla suojatun työkirjan ja paljon muuta. Se käsitellään täällä artikkelissamme työkirjojen avaamisesta / sulkemisesta.
Avaa ja määritä muuttujaan
Voit myös avata työkirjan ja määrittää sen muuttujalle samanaikaisesti:
12 | Dim wb TyökirjanaAseta wb = Työkirjat.Open ("C: \ Users \ StevePC2 \ Downloads \ book2.xlsm") |
Avaa Tiedosto -valintaikkuna
Voit myös käynnistää Avaa tiedosto -valintaikkunan seuraavasti:
12345678 | Osa OpenWorkbook ()Dim strFile merkkijononastrFile = Application.GetOpenFilename ()Työkirjat. Auki (strFile)End Sub |
Luo uusi (Lisää) työkirja
Tämä koodirivi luo uuden työkirjan:
1 | Työkirjat Lisää |
Uudesta työkirjasta tulee nyt ActiveWorkbook, jonka avulla voit olla vuorovaikutuksessa sen kanssa (esim. tallentaa uuden työkirjan).
Lisää uusi työkirja muuttujaan
Voit myös lisätä uuden työkirjan suoraan muuttujaan:
12 | Dim wb TyökirjanaAseta wb = Työkirjat |
Sulje työkirja
Sulje ja tallenna
Voit sulkea työkirjan tallennuksella käyttämällä Sulje menetelmä kanssa Tallenna muutokset asetettu arvoon TRUE:
1 | ActiveWorkbook.Close SaveChanges: = Totta |
Sulje ilman Tallenna
Sulje tallentamatta asettamalla Tallenna muutokset yhtä kuin EPÄTOSI:
1 | ActiveWorkbook.Close SaveChanges: = False |
Työkirja Tallenna nimellä
The SaveAs -menetelmä käytetään työkirjan tallentamiseen nimellä.
Voit tallentaa työkirjan uudella nimellä samaan hakemistoon käyttämällä seuraavaa:
1 | ActiveWorkbook.SaveAs "uusi" |
jossa "uusi" on uuden tiedostonimi.
Jos haluat tallentaa työkirjan uuteen hakemistoon, jossa on tietty tiedostopääte, määritä uusi hakemisto ja tiedostonimi:
1 | ActiveWorkbook.SaveAs "C: \ Users \ StevePC2 \ Downloads \ new.xlsm" |
Muita työkirjan VBA -esimerkkejä
Työkirjan nimi
Työkirjan nimen hankkiminen:
1 | MsgBox ActiveWorkbook.Name |
Suojaa työkirja
Voit suojata työkirjan rakenteen muokkaamiselta käyttämällä Suojausmenetelmä (salasana valinnainen):
1 | Työkirjat ("book1.xlsm"). Suojaa salasana |
Poista työkirjan suojaus käyttämällä Suojaamaton menetelmä:
1 | Työkirjat ("book1.xlsm"). Poista salasanan suojaus |
Käy läpi kaikki avoimet työkirjat
Kaikkien avointen työkirjojen selaaminen:
123456789 | Sub LoopThroughWBs ()Dim wb TyökirjanaJokaiselle wb: lle työkirjoissaMsgBox wb.NameSeuraava wbEnd Sub |
Työkirjan aktivointitapahtuma
Voit suorittaa jonkin koodin aina, kun tietty työkirja avataan Työkirjan avoin tapahtuma.
Aseta tämä menettely työkirjasi ThisWorkbook -moduuliin:
123 | Yksityinen alityökirja_Avaa ()Sheets ("sheet1"). AktivoiEnd Sub |
Tämä toimenpide aktivoituu Taulukko 1 joka kerta kun työkirja avataan.