INHOUDSOPGAWE
In hierdie artikel sal ek jou wys hoe jy die UsedRange -eienskap van VBA in Excel kan gebruik. Jy sal leer om die UsedRange -eienskap te gebruik vir 'n geslote reeks, vir 'n verspreide reeks, vir 'n onaktiewe werkblad, en ook vir 'n onaktiewe werkboek.
Laai Oefenwerkboek af
Laai hierdie werkboek af om te oefen terwyl jy hierdie artikel lees.
Excel VBA UsedRange.xlsm
'n Inleiding tot die UsedRange-eienskap van VBA in Excel
Die UsedRange -eienskap van VBA gee 'n Range -objek terug. Dit gee 'n reeks terug wat bestaan uit al die selle in 'n werkblad wat gebruik is, insluitend 'n leë ry in die begin.
In 'n VBA kode, die UsedRange -eienskap moet saam met die werkbladnaam gebruik word. Die algemene sintaksis vir die gebruik van die UsedRange -eienskap vir die aktiewe werkblad is dus:
Dim Rng As Range
Set Rng = ActiveSheet.UsedRange
⧭ Notas:
- Hier Rng is die naam van die Reik wat deur die UsedRange -eienskap teruggestuur word. Jy kan enigiets gebruik wat jy wil.
- Om die UsedRange -eienskap in 'n ander werkblad as die aktiewe een uit te oefen, gebruik eerder die naam van die werkblad.
Byvoorbeeld, om dit toe te pas in 'n werkblad genaamd Blad1 , voeg in:
Set Rng = Worksheets("Sheet1").UsedRange
4 Maniere om die UsedRange-eienskap van VBA in Excel te gebruik
Hier is die 4 algemeenstemaniere om die UsedRange -eienskap in VBA te gebruik.
1. VBA UsedRange-eiendom vir 'n geslote reeks
In die eerste plek sal ons die VBA UsedRange -eienskap gebruik vir 'n werkblad met 'n geslote reeks.
Dit' sal die hele reeks terugstuur, insluitend 'n leë ry aan die begin.
Hier het ons 'n werkblad genaamd Blad1 wat 'n geslote reeks bevat wat bestaan uit die name, aansluitingsdatums en salarisse van sommige werknemers van 'n maatskappy.
As jy nou die UsedRange -eienskap op hierdie werkblad gebruik, sal dit die reeks B2:C13 (Insluitend 'n leë ry in die begin).
As Blad1 aktief is, kan jy gebruik:
Dim Rng As Range
Set Rng = ActiveSheet.UsedRange
Of jy kan gebruik:
Dim Rng As Range
Set Rng = Worksheets("Sheet1").UsedRange
⧭ Uitset :
Ons het die Select -eienskap van 'n Reik binne die kode gebruik. Dus, as ons die kode laat loop, sal dit die reeks B2:D13 van Blad1 kies.
Lees meer: Hoe om die reeksvoorwerp van VBA in Excel te gebruik (5 eienskappe)
2. VBA UsedRange-eienskap vir 'n verstrooide reeks
As jy 'n verstrooide reeks in enige werkblad het, sal die UsedRange -eienskap 'n reeks terugstuur, insluitend die leë selle tussenin.
Nou, in Blad1 , het ons die totale salaris, hoogste salaris en laagste salaris op verskeie plekke versprei, van sel B3 tot G3 , soos:
Gebruik nou enige van die twee reëls kodes om die UsedRange -eienskap te gebruik.
Dim Rng As Range
Set Rng = ActiveSheet.UsedRange
Of
Dim Rng As Range
Set Rng = Worksheets("Sheet1").UsedRange
⧭ Uitvoer:
Dit gee al die selle binne die reeks B2:G3 van Blad1 terug, insluitend die leë selle (insluitend 'n leë ry in die begin). Aangesien ons die Select -eienskap van die Reeks gebruik het, sal dit die reeks B2:G3.
Lees meer: Einde van 'n reeks met behulp van VBA in Excel (met voorbeelde)
Soortgelyke lesings
- Excel VBA Kopieer reeks na 'n ander blad (8 maklikste maniere)
- Loop deur 'n reeks vir elke sel met Excel VBA (Ultimate Gids)
- Excel-onderskrif buite-omvangfout in VBA (met 5 oplossings)
3. VBA UsedRange Property for an Inactive Worksheet
As ons die UsedRange -eienskap op 'n onaktiewe werkblad wil uitoefen, moet jy die naam van die werkblad aan die begin noem.
Byvoorbeeld, hier is my aktiewe werkblad Blad1 .
Om die UsedRange -eienskap in Blad2 te gebruik, moet ons gebruik :
Dim Rng As Range
Set Rng = Worksheets("Sheet2").UsedRange
Dit' Ek sal al die gebruikte selle in die werkblad genaamd Blad2 kies.
Lees meer: VBA om reeks in te stel Excel (7 voorbeelde)
4.VBA UsedRange-eienskap vir 'n onaktiewe werkboek
Jy kan selfs die UsedRange-eienskap gebruik vir 'n werkboek wat nie aktief is nie. Plaas net die naam van die werkboek voor.
Byvoorbeeld, hier is my aktiewe werkboek Werkboek1 . Om die UsedRange -eienskap oor Blad1 van Werkboek2 uit te oefen, moet ons:
Dim Rng As Range
Set Rng = Workbooks("Workbook2.xlsm").Worksheets("Sheet1").UsedRange
Dit sal die gebruikte reeks van die werkblad Blad1 van <1 kies>Werkboek2 .
Lees meer: VBA vir elke sel in reeks in Excel (3 metodes)
Dinge om te onthou
Die UsedRange -eienskap van VBA gee 'n Range -objek terug. Hier in hierdie artikel het ons die Select -eienskap van 'n Range-voorwerp gebruik ter wille van visualisering. Maar natuurlik kan jy enige ander eienskap van 'n Reeks gebruik volgens jou gerief.
Gevolgtrekking
Deur hierdie metodes te gebruik, kan jy die UsedRange -eienskap in Excel. Het jy enige vrae? Vra ons gerus.