Innholdsfortegnelse
I denne artikkelen skal jeg vise deg hvordan du kan bruke UsedRange -egenskapen til VBA i Excel. Du lærer å bruke egenskapen UsedRange for et lukket område, for et spredt område, for et inaktivt regneark, og også for en inaktiv arbeidsbok.
Last ned øvelsesarbeidsbok
Last ned denne arbeidsboken for å øve deg mens du leser denne artikkelen.
Excel VBA UsedRange.xlsm
En introduksjon til UsedRange-egenskapen til VBA i Excel
UsedRange -egenskapen til VBA returnerer et Range -objekt. Den returnerer et område som består av alle cellene i et regneark som har blitt brukt, inkludert en tom rad i begynnelsen.
I en VBA kode, egenskapen UsedRange skal brukes sammen med regnearkets navn. Så den vanlige syntaksen for å bruke egenskapen UsedRange for det aktive regnearket er:
Dim Rng As Range
Set Rng = ActiveSheet.UsedRange
⧭ Merknader:
- Her Rng er navnet på Range som returneres av egenskapen UsedRange . Du kan bruke hva du vil.
- For å bruke egenskapen UsedRange i et annet regneark enn det aktive, bruk navnet på regnearket i stedet.
For eksempel, for å bruke det i et regneark kalt Ark1 , sett inn:
Set Rng = Worksheets("Sheet1").UsedRange
4 måter å bruke UsedRange-egenskapen til VBA i Excel
Her er de 4 vanligstemåter å bruke UsedRange -egenskapen i VBA .
1. VBA UsedRange-egenskap for et lukket område
Først og fremst bruker vi egenskapen VBA UsedRange for et regneark med et lukket område.
It' Jeg vil returnere hele området, inkludert en tom rad i begynnelsen.
Her har vi et regneark kalt Ark1 som inneholder et lukket område som består av navnene, sammenslutningsdatoer og lønn til noen ansatte i et selskap.
Nå hvis du bruker egenskapen UsedRange på dette regnearket, vil det returnere området B2:C13 (Inkludert en tom rad i begynnelsen).
Hvis Ark1 er aktiv, kan du bruke:
Dim Rng As Range
Set Rng = ActiveSheet.UsedRange
Eller du kan bruke:
Dim Rng As Range
Set Rng = Worksheets("Sheet1").UsedRange
⧭ Utgang :
Vi har brukt egenskapen Select til en Range i koden. Så hvis vi kjører koden, vil den velge området B2:D13 for Ark1 .
Les mer: Hvordan bruke rekkeviddeobjektet til VBA i Excel (5 egenskaper)
2. VBA UsedRange-egenskap for et spredt område
Hvis du har et spredt område i et regneark, vil egenskapen UsedRange returnere et område inkludert de tomme cellene i mellom.
Nå, i Ark1 , har vi totallønn, høyeste lønn og laveste lønn spredt på forskjellige steder, fra celle B3 til G3 , som dette:
Bruk nå en av de to kodelinjene for å bruke egenskapen UsedRange .
Dim Rng As Range
Set Rng = ActiveSheet.UsedRange
Eller
Dim Rng As Range
Set Rng = Worksheets("Sheet1").UsedRange
⧭ Utdata:
Den returnerer alle cellene innenfor området B2:G3 til Ark1 inkludert de tomme cellene (inkludert en tom rad i begynnelsen). Ettersom vi har brukt egenskapen Select til Range , vil den velge området B2:G3.
Les mer: Slutt på et område ved bruk av VBA i Excel (med eksempler)
Lignende avlesninger
- Excel VBA Kopier rekkevidde til et annet ark (8 enkleste måter)
- Søk gjennom et område for hver celle med Excel VBA (Ultimate Guide)
- Excel Subscript Out of Range Error i VBA (med 5 løsninger)
3. VBA UsedRange-egenskap for et inaktivt regneark
Hvis vi ønsker å bruke egenskapen UsedRange på et inaktivt regneark, må du nevne navnet på regnearket i begynnelsen.
For eksempel, her er det aktive regnearket mitt Ark1 .
For å bruke egenskapen UsedRange i Sheet2 , må vi bruke :
Dim Rng As Range
Set Rng = Worksheets("Sheet2").UsedRange
It' Jeg velger alle de brukte cellene i regnearket som heter Ark2 .
Les mer: VBA for å angi område i Excel (7 eksempler)
4.VBA UsedRange-egenskap for en inaktiv arbeidsbok
Du kan til og med bruke UsedRange-egenskapen for en arbeidsbok som ikke er aktiv. Bare sett navnet på arbeidsboken foran.
For eksempel, her er min aktive arbeidsbok Arbeidsbok1 . For å utøve UsedRange -egenskapen over Sheet1 av Workbook2 , må vi bruke:
Dim Rng As Range
Set Rng = Workbooks("Workbook2.xlsm").Worksheets("Sheet1").UsedRange
Det vil velge det brukte området for regnearket Ark1 av Arbeidsbok2 .
Les mer: VBA for hver celle i området i Excel (3 metoder)
Ting å huske
UsedRange -egenskapen til VBA returnerer et Range -objekt. Her i denne artikkelen har vi brukt egenskapen Select til et Range-objekt for visualiseringens skyld. Men åpenbart kan du bruke en hvilken som helst annen egenskap for en Range etter eget ønske.
Konklusjon
Ved å bruke disse metodene kan du bruke UsedRange -egenskap i Excel. Har du noen spørsmål? Spør oss gjerne.