VBA-regneark - Hvordan bruker jeg regnearkobjekt i VBA?

Innholdsfortegnelse

Excel VBA-regneark

Excel er en arbeidsbok, og i den arbeidsboken inneholder den regneark eller ark. Det er veldig viktig å forstå begrepet regneark i VBA fordi vi jobber med regneark hele tiden. I normal excel-fil kaller vi det som ark, men i VBA-terminologi kalles det "Arbeidsark". Alle samlingene til et regneark kalles “Arbeidsark”.

I VBA er regnearket et objekt. Det er to måter å referere til regnearket, en med "regneark" -objektet, og en annen med "ark" -objektet.

Jeg vet at spørsmålet ditt er hva forskjellen mellom dem er. I Excel kan vi se to typer ark, en er vanlige regneark og en annen er kartark.

Regnearkfanen i Excel vurderer bare regnearkene i arbeidsboken bortsett fra diagramark. "Ark" vurderer alle regnearkene i arbeidsboken, inkludert kartarket. Se for eksempel på bildet nedenfor.

I ovennevnte har vi totalt 5 ark. Av disse 5 arkene er 3 regneark og 2 kartplater.

Her er antall "regneark" 3, og antall "ark" er 2.

Se på bildet nedenfor.

Her er alle arkene regneark, så antallet "regneark" og "ark" er 3.

Så, som en del av koden, hvis du vil bruke regneark, husker objekter dette punktet.

Syntaks for VBA-regneark

Som jeg fortalte, er regnearket en objektvariabel. Dette har imidlertid også syntaks.

Indeksen er ingenting som er regnearknummeret vi refererer til. Som du til slutt kan se, blir det referert til som Objekt.

For eksempel, regneark (1). Velg betyr å velge det første regnearket i arbeidsboken. Det spiller ingen rolle hva navnet på regnearket er; uansett hvilken regneark som settes inn først i arbeidsboken, blir valgt.

Vi kan også referere til regnearket med navnet også. Vi må nevne det komplette da det er et regnearknavn i dobbelt anførselstegn.

For eksempel, regneark ("Salgsark"). Velg betyr å velge arket som heter "Salgsark". Her spiller det ingen rolle hva som er nummeret på regnearket, det velger alltid det angitte regnearket.

Hvordan bruke regnearkobjekt i VBA?

Eksempel 1

Anta for eksempel at du har totalt 5 ark i arbeidsboken din, og navnet på disse regnearkene er "Regneark 1", "Regneark 2", "Regneark 3", "Kartark 1" og "Kartark 2".

Hvis jeg bruker nummereringen til å velge regnearket, kan jeg bruke nummeret som regnearkreferanse.

Arbeidsark (2). Velg betyr at det vil velge det andre regnearket i arbeidsboken.

Kode:

Under regneark_eksempel1 () regneark (2). Velg slutt sub

Jeg vil kjøre denne koden ved hjelp av F5-tasten eller manuelt og se resultatet.

Nå vil jeg endre arknummeret til 3.

Kode:

Under regneark_eksempel1 () regneark (3). Velg slutt sub

Se nå hva som skjer når du kjører koden manuelt eller bruker F5-nøkkelkoden.

Hvis du ser på bildet ovenfor, hadde det valgt det fjerde regnearket da jeg ba om å velge det tredje regnearket.

Dette er fordi jeg har brukt regnearkobjektet, ikke arkark. Som jeg fortalte tidligere, vurderer "regneark" -objektet bare regneark, ikke diagramark.

For å velge det tredje arket av alle arkene i arbeidsboken, bruk Ark-objekt.

Kode:

Underarbeidsark_eksempel1 ()

Ark (3) .Velg

Slutt Sub

Nå vil den velge det eksakte tredje arket.

Eksempel 2 - Velg arbeidsark etter navn

Å velge arkene med navnet deres er den nøyaktige måten å henvise til arket på. Hvis vi for eksempel vil velge arket "Arbeidsark 3", kan du bruke koden nedenfor.

Kode:

Under regneark_eksempel2 () regneark ("Regneark 3"). Velg Avslutt sub

Dette vil velge nøyaktig ark; det spiller ingen rolle hvor den er plassert i arbeidsboken.

Men hvis du prøvde å få tilgang til kartarket med "Arbeidsark" -objektet, får vi "Abonnement utenfor rekkevidde feil."

Kode:

Under regneark_eksempel2 () regneark ("Kartark 1"). Velg Avslutt sub

Kjør denne koden gjennom F5-tasten eller manuelt og se resultatet.

Eksempel 3 - Problem med regnearknavnet

Det er ett problem med å henvise arkene med navnet. Hvis noen endrer navnet på regnearket, vil vi igjen få feilen "Abonnement utenfor rekkevidde."

For å løse dette problemet, gå til Visual Basic Editor ved å trykke på ALT + F11- tasten.

Velg arknavnet og trykk på F4- tasten for å se eiendomsvinduet.

I disse egenskapene endrer vinduet navnet på regnearket til navnet ditt.

En interessant ting her er, selv om vi har endret navnet på regnearket fra "Arbeidsark 1" til "WS1", men vi kan fortsatt se det samme navnet i arbeidsboken.

Nå kan vi henvise dette arket med navnet “WS1”.

Kode:

Under regneark_eksempel2 () regneark ("WS1"). Velg Avslutt sub

Nå spiller det ingen rolle hvem som endrer navnet på regnearket. Koden vår refererer likevel til det samme arket så lenge det ikke endrer i Visual Basic Editor.

Eksempel 4 - Få antall antall ark i arbeidsboken

Et regneark er et objekt, og vi kan bruke alle egenskapene og metodene som er knyttet til det. Hva gjør vi med regneark?

Vi setter inn regneark. Vi gir nytt navn til regneark. Vi sletter regneark og mange andre ting vi gjør med det.

Skriv inn objektet "Regneark" og sett en prikk for å se alle alternativene med dem.

For å få tellingen på regnearkene bruker du VBA Count Property.

Kode:

Underarbeidsark_eksempel3 () Dim i så lenge jeg = Arbeidsark.Telle MsgBox i Avslut sub

Dette viser antall regneark.

Selv om det er 5 ark, fikk vi tellingen som 3 fordi de andre 2 arkene er kartark.

Bruk "Ark" -objektet for å få det totale antallet ark.

Kode:

Underarbeidsark_eksempel3 () Dim i så lenge i = Ark. Telle MsgBox i slutt sub

Dette viser arkets totale antall.

Eksempel 5 - Metoder ved bruk av regnearkobjekt

Etter å ha angitt regnearkobjektet, kan vi få tilgang til alle egenskapene og objektene som er knyttet til det. Vi kan legge til et nytt ark. Vi kan slette osv.

For å legge til nytt ark.

Regneark. Legg til

For å slette regneark

Regneark (“Arknavn”). Slett

For å endre navnet på regnearket

Arbeidsark (“Arknavn”). Navn = “Nytt navn”

Interessante artikler...