Excel VBA-områdeobjekt
Hva er VBA Range?
VBA-områdeobjektet representerer en celle eller flere celler i Excel-regnearket. Det er det viktigste objektet i Excel VBA. Ved å bruke Excel VBA-områdeobjekt kan du referere til,
- En enkelt celle
- En rad eller en kolonne med celler
- Et utvalg av celler
- Et 3D-område
Som vi diskuterte i vår forrige opplæring, brukes VBA til å ta opp og kjøre makro. Men hvordan VBA identifiserer hvilke data fra arket som må utføres. Det er her VBA Range Objects er nyttig.
Introduksjon til å referere til objekter i VBA
Refererer til Excels VBA Range Object og Object Qualifier.
- Objektkvalifisering: Dette brukes for å referere til objektet. Den spesifiserer arbeidsboken eller regnearket du referer til.
For å manipulere disse celleverdiene, Eiendommer og Metoder er brukt.
- Eiendom: En egenskap lagrer informasjon om objektet.
- Metode: En metode er en handling av objektet den skal utføre. Områdeobjekt kan utføre handlinger som valgt, kopiert, slettet, sortert osv.
VBA følger objekthierarkimønsteret for å referere objekt i Excel. Du må følge følgende struktur. Husk at .dot her forbinder objektet på hvert av de forskjellige nivåene.
Søknad.Arbeidsbøker.Arbeidsark.Utvalg
Det er to hovedtyper standardobjekter.
Hvordan referere til Excel VBA Range Object ved hjelp av Range-egenskapen
Områdeegenskap kan brukes i to forskjellige typer objekter.
- Arbeidsarkobjekter
- Rekkeviddeobjekter
Syntaks for Range Property
- Søkeordet «Rekkevidde».
- Parentes som følger nøkkelordet
- Relevant celleområde
- Sitat (” “)
Application.Workbooks("Book1.xlsm").Worksheets("Sheet1").Range("A1")
Når du refererer til Range-objekt, som vist ovenfor, blir det referert til som fullt kvalifisert referanse. Du har fortalt Excel nøyaktig hvilken rekkevidde du vil ha, hvilket ark og i hvilket regneark.
Eksempel: MeldingBox Regneark(“ark1”).Område(“A1”).Verdi
Ved å bruke Range-egenskapen kan du utføre mange oppgaver som,
- Referer til en enkelt celle som bruker områdeegenskap
- Se en enkelt celle ved å bruke egenskapen Worksheet.Range
- Referer til en hel rad eller kolonne
- Se sammenslåtte celler ved å bruke Worksheet.Range Property og mange flere
Som sådan vil det være for langvarig å dekke alle scenarier for rekkevidde. For scenarier nevnt ovenfor, vil vi vise et eksempel bare for ett. Referer til en enkelt celle som bruker områdeegenskap.
Se en enkelt celle ved å bruke egenskapen Worksheet.Range
For å referere til en enkelt celle, må du referere til en enkelt celle.
Syntaks er enkel "Rekkevidde("Celle")".
Her vil vi bruke ".Select"-kommandoen for å velge enkeltcellen fra arket.
Trinn 1) I dette trinnet åpner du Excel.
Trinn 2) I dette trinnet
- Klikk på
knapp.
- Det vil åpne et vindu.
- Skriv inn programnavnet ditt her og klikk "OK"-knappen.
- Den tar deg til hovedfilen i Excel, fra toppmenyen klikker du på "stopp" opptaksknappen for å stoppe opptak av makro.
Trinn 3) I neste trinn,
- Klikk på Makro-knappen
fra toppmenyen. Det vil åpne vinduet nedenfor.
- I dette vinduet klikker du på 'rediger'-knappen.
Trinn 4) Trinnet ovenfor vil åpne VBA-koderedigering for filnavnet "Single Cell Range". Skriv inn koden som vist nedenfor for å velge område "A1" fra excel.
Trinn 5) Lagre nå filen og kjør programmet som vist nedenfor.
Trinn 6) Du vil se at celle "A1" er valgt etter utførelse av programmet.
På samme måte kan du velge en celle med et bestemt navn. For eksempel, hvis du vil søke i celle med navnet "Guru99-VBA Tutorial". Du må kjøre kommandoen som vist nedenfor. Den vil velge cellen med det navnet.
Range ("Guru99- VBA Tutorial"). Velg
For å bruke et annet områdeobjekt her er kodeeksemplet.
Område for valg av celle i Excel | Rekkevidde er deklarert |
---|---|
For enkelt rad | Område(“1:1”) |
For enkelt kolonne | Område (“A: A”) |
For sammenhengende celler | Range(“A1:C5”) |
For ikke-sammenhengende celler | Område(“A1:C5, F1:F5”) |
For skjæring mellom to områder | Område(“A1:C5 F1:F5”)
(For skjæringscelle, husk at det ikke er noen kommaoperator) |
For å slå sammen Cell | Range(“A1:C5”)
(For å slå sammen celle, bruk "sammenslå"-kommandoen) |
Celleegenskap
På samme måte som rekkevidden, i VBA du kan også "Cell Property". Den eneste forskjellen er at den har en "element"-egenskap som du bruker til å referere til cellene på regnearket. Celleegenskap er nyttig i en programmeringssløyfe.
For eksempel,
Cells.item(Row, Column). Begge linjene nedenfor refererer til celle A1.
- Cells.item(1,1) OR
- Cells.item(1,”A”)
Range Offset-egenskap
Områdeforskyvningsegenskap vil velge rader/kolonner bort fra sin opprinnelige posisjon. På grunnlag av området som er deklarert, velges celler. Se eksempel nedenfor.
For eksempel,
Range("A1").offset(Rowoffset:=1, Columnoffset:=1).Select
Resultatet for dette vil celle B2. Offset-egenskapen vil flytte A1-celle til 1 kolonne og 1 rad unna. Du kan endre verdien for radforskyvning / kolonneforskyvning i henhold til krav. Du kan bruke en negativ verdi (-1) for å flytte celler bakover.
Last ned Excel som inneholder koden ovenfor
Sammendrag
- VBA-områdeobjektet representerer en celle eller flere celler i Excel-regnearket
- En enkelt celle
- En rad eller en kolonne med celler
- Et utvalg av celler
- Et 3D-område
- For å manipulere celleverdier, Eiendommer og Metoder benyttes
- En egenskap lagrer informasjon om objektet
- En metode er en handling av objektet den vil utføre som å velge, slå sammen, sortere osv.
- VBA følger objekthierarkimønsteret for å referere objekt i Excel ved å bruke .dot-operatoren
- Områdeegenskap kan brukes i to forskjellige typer objekter
- Arbeidsarkobjekter
- Rekkeviddeobjekter