/ / Excel VBA-arbeidsbok og regnearkobjekt

Excel VBA-arbeidsbok og regnearkobjekt

Objekt Hierarki | samlinger | Egenskaper og metoder

Lær mer om arbeidsbok og Arbeidsarkobjekt i Excel VBA.

Objekt Hierarki

I Excel VBA kan en gjenstand inneholde en annenobjekt, og objektet kan inneholde et annet objekt, etc. Med andre ord involverer Excel VBA programmering arbeid med et objekthierarki. Dette høres nokså ganske forvirrende ut, men vi vil gjøre det klart.

Moderen til alle objekter er Excel selv. Vi kaller det applikasjonsobjektet. Programobjektet inneholder andre objekter. For eksempel, Arbeidsbok-objektet (Excel-fil). Dette kan være en hvilken som helst arbeidsbok du har opprettet. Arbeidsbokobjektet inneholder andre objekter, for eksempel arbeidsarkobjektet. Arbeidsarkobjektet inneholder andre objekter, for eksempel Range-objektet.

Kapittelet Lag et makro illustrerer hvordan du kjører kode ved å klikke på en kommandoknapp. Vi brukte følgende kodelinje:

Range("A1").Value = "Hello"

men det vi egentlig mente var:

Application.Workbooks("create-a-macro").Worksheets(1).Range("A1").Value = "Hello"

Merk: Objektene er koblet til en prikk. Heldigvis trenger vi ikke legge til en kode linje på denne måten. Det er fordi vi plassert kommandoknappen vår i create-a-macro.xls, på det første regnearket. Vær oppmerksom på at hvis du vil endre ting på forskjellige regneark, må du inkludere arbeidsarkobjektet. Les videre.

samlinger

Du har kanskje lagt merke til at arbeidsbøker ogRegneark er begge flertall. Det er fordi de er samlinger. Samlingen i arbeidsbøker inneholder alle arbeidsbokobjektene som for øyeblikket er åpne. Samlingen i regneark inneholder alle arbeidsarkobjektene i en arbeidsbok.

Arbeidsarknavn

Du kan referere til et medlem av samlingen, for eksempel et enkelt regnearkobjekt, på tre måter.

1. Bruke regnearknavnet.

Worksheets("Sales").Range("A1").Value = "Hello"

2. Ved hjelp av indeksnummeret (1 er det første regnearket som starter fra venstre).

Worksheets(1).Range("A1").Value = "Hello"

3. Bruk Kodenavn.

Sheet1.Range("A1").Value = "Hello"

For å se CodeName av et regneark, åpne Visual Basic Editor. I Project Explorer er fornavnet CodeName. Det andre navnet er regnearknavnet (Salg).

Kodenavn

Merk: Kodenavnet forblir det samme hvis du endrer regnearknavnet eller rekkefølgen på regnearkene dine, så dette er den sikreste måten å referere til et regneark på. Klikk Vis, Egenskaper Vindu for å endre Kodenavn for et regneark. Det er en ulempe, du kan ikke bruke CodeName hvis du refererer til et regneark i en annen arbeidsbok.

Egenskaper og metoder

La oss nå se på noen egenskaper ogmetoder for arbeidsbøker og regneark samling. Egenskaper er noe som en samling har (de beskriver samlingen), mens metoder gjør noe (de utfører en handling med en samling).

Legg en kommandoknapp på regnearket og legg til kodelinjene:

1. Legg til metoden i arbeidsboksinnsamlingen lager en ny arbeidsbok.

Workbooks.Add

Merk: Legg til metoden i regnearksamlingen oppretter et nytt regneark.

2. Count-egenskapen i regnearksamlingen teller antall regneark i en arbeidsbok.

MsgBox Worksheets.Count

Resultat når du klikker på kommandoknappen på arket:

Count Property i Excel VBA

Merk: Count-egenskapen i arbeidsboksinnsamlingen teller antall aktive arbeidsbøker.

Les også: