VBA UsedRange - Sådan finder du antallet af brugte rækker og kolonner?

Indholdsfortegnelse

UsedRange er, som navnet antyder, de områder, som som en slags værdier i dem, er de tomme celler ikke inkluderet i de anvendte områder, så i VBA Brugte områder er egenskaben for rækkeviddeobjektet i VBA for det område af celler i rækker og kolonner, der ikke er tomme og har nogle værdier.

UsedRange i VBA Excel

UsedRange i VBA er en egenskab i regnearket, der returnerer et områdeobjekt, der repræsenterer det anvendte interval (alle Excel-celler, der er brugt eller udfyldt i et regneark) på et bestemt regneark. Det er en egenskab, der repræsenterer det område, der er dækket eller afgrænset af den øverste venstre brugte celle og sidst til højre brugte celler i et regneark.

Vi kan beskrive 'Brugt celle' som en celle, der indeholder en hvilken som helst formel, formatering, værdi osv. Vi kan også vælge den sidst anvendte celle ved at trykke på CTRL + END-tasterne på tastaturet.

Følgende er en illustration af en UsedRange i et regneark:

Vi kan se i ovenstående skærmbillede, at UsedRange er A1: D5.

Eksempler på Excel VBA UsedRange-egenskab

Lad os se på nogle eksempler nedenfor for at se, hvordan UsedRange-egenskaben i et regneark kan bruges til at finde det anvendte interval i VBA:

Eksempel nr. 1

Lad os sige, at vi har en Excel-fil, der indeholder to regneark, og vi ønsker at finde og vælge det anvendte interval på Ark1.

Lad os se, hvad Sheet1 indeholder:

Vi bruger UsedRange-ejendommen i vinduet VBA Immediate til at udføre denne opgave. VBA øjeblikkeligt vindue er et værktøj, der hjælper med at få oplysninger om Excel-filer, hurtigt udføre eller fejle enhver VBA-kode, selvom brugeren ikke skriver nogen makroer. Det er placeret i Visual Basic Editor og kan tilgås som følger:

  • Gå til fanen Udvikler Excel, og klik derefter på Visual Basic Editor, eller tryk på Alt + F11 for at åbne Visual Basic Editor-vinduet.

Når du gør dette, åbnes et vindue som følger:

  • Tryk på Ctrl + G for at åbne det øjeblikkelige vindue, og skriv koden.

Det øjeblikkelige vindue ser ud som:

  • Den følgende kode vælger det anvendte interval på Ark1.

Kode:

? Arbejdsark ("Sheet1"). Aktivér True? ActiveSheet.UsedRange.Select True

Den første sætning af koden aktiverer ark1 i filen, og den anden sætning vælger det anvendte område i det aktive ark.

Når vi skriver denne kode, ser vi, at det anvendte interval i Ark1 bliver valgt som følger:

Eksempel 2

Lad os nu sige i dette eksempel, at vi ønsker at finde det samlede antal rækker, der bruges i ark 1. For at gøre dette følger vi nedenstående trin:

  • Opret et makronavn i modulet.

Kode:

Sub TotalRows () Afslut Sub
  • Definer variablen TotalRow som heltal i VBA:

Kode:

Sub TotalRows () Dim TotalRow som Integer End Sub
  • Tildel nu variablen TotalRow med formlen for at beregne et samlet antal rækker:

Kode:

Sub TotalRows () Dim TotalRow Som Integer TotalRow = ActiveSheet.UsedRange.Rows.Count End Sub
  • Nu kan den resulterende værdi af TotalRow vises og returneres ved hjælp af et VBA-meddelelsesfelt (MsgBox) som følger:

Kode:

Sub TotalRows () Dim TotalRow Som Integer TotalRow = ActiveSheet.UsedRange.Rows.Count MsgBox TotalRow End Sub
  • Nu kører vi denne kode manuelt eller ved at trykke på F5, og vi får det samlede antal rækker, der bruges i Ark1, vist i en meddelelsesboks som følger:

Så vi kan se i ovenstående skærmbillede, at '5' returneres i meddelelsesboksen, og som vi kan se i Ark1, er det samlede antal rækker i det anvendte interval 5.

Eksempel 3

Tilsvarende, hvis vi ønsker at finde det samlede antal kolonner, der bruges i Ark1, følger vi de samme trin som ovenfor bortset fra en lille ændring i koden som følger:

Kode:

Sub TotalCols () Dim TotalCol Som Heltal TotalCol = ActiveSheet.UsedRange.Columns.Count MsgBox TotalCol End Sub

Når vi nu kører denne kode manuelt eller ved at trykke på F5, får vi det samlede antal kolonner, der er brugt i Ark1 vist i en meddelelsesboks som følger:

Så '4' returneres i meddelelsesfeltet, og som vi kan se i Ark1, er det samlede antal kolonner i det anvendte interval 4.

Eksempel 4

Lad os nu sige, at vi ønsker at finde det sidst anvendte række- og søjlenummer i ark 2 i filen. Lad os se, hvad Sheet2 indeholder:

For at gøre dette følger vi nedenstående trin:

  • Opret et makronavn i modulet.

Kode:

Sub LastRow () Afslut Sub
  • Definer variablen LastRow som heltal.

Kode:

Sub LastRow () Dim LastRow som Integer End Sub
  • Tildel nu variablen LastRow med formlen for at beregne det sidst anvendte række nummer:

Kode:

Sub LastRow () Dim LastRow Som Integer LastRow = ActiveSheet.UsedRange.SpecialCells (xlCellTypeLastCell) .Row End Sub

Specialcells-metoden i Excel VBA returnerer et områdeobjekt, der kun repræsenterer de angivne celletyper. Syntaksen for SpecialCells-metoden er:

RangeObject.SpecialCells (Type, Value)

I ovenstående kode repræsenterer xlCellTypeLastCell: den sidste celle i det anvendte interval.

Bemærk: 'xlCellType' inkluderer endda tomme celler, der har ændret standardformatet for nogen af ​​deres celler.
  • Nu kan den resulterende værdi af LastRow-nummer vises og returneres ved hjælp af en meddelelsesboks (MsgBox) som følger:

Kode:

Sub LastRow () Dim LastRow Som Integer LastRow = ActiveSheet.UsedRange.SpecialCells (xlCellTypeLastCell) .Row MsgBox LastRow End Sub
  • Nu kører vi denne kode manuelt eller ved at trykke på F5, og vi får det sidst anvendte række nummer i Ark2 vist i en meddelelsesboks som følger:

Så vi kan se i ovenstående skærmbillede, at '12' returneres i meddelelsesboksen, og som vi kan se i Ark2, er det sidst anvendte række nummer 12.

Tilsvarende, hvis vi ønsker at finde det sidst anvendte kolonnenummer i Ark2, følger vi de samme trin som ovenfor bortset fra en lille ændring i koden som følger:

Kode:

Sub LastCol () Dim LastCol As Integer LastCol = ActiveSheet.UsedRange.SpecialCells (xlCellTypeLastCell). Kolonne MsgBox LastCol End Sub

Når vi nu kører denne kode manuelt eller ved at trykke på F5, får vi det sidst anvendte kolonnenummer i Ark2 vist i en meddelelsesboks som følger:

Så vi kan se i ovenstående skærmbillede, at '3' returneres i meddelelsesboksen, og som vi kan se i Sheet2, er det sidst anvendte kolonnetal 3.

Ting at huske om VBA UsedRange

  • VBA UsedRange er et rektangelområde.
  • VBA UsedRange inkluderer celler, der har data eller er formateret osv.
  • Excel VBA UsedRange inkluderer ikke nødvendigvis den øverste venstre celle i regnearket.
  • UsedRange betragter ikke nødvendigvis den aktive celle som brugt.
  • UsedRange kan bruges til at finde den sidst anvendte række i VBA og til at nulstille det anvendte interval osv.
  • Ved at trykke på genvejen til Excel-tasterne CTRL + SKIFT + ENTER på et tastatur kan du bruge til at udvide markeringen fra en aktiv celle til den sidst anvendte celle på et regneark.

Interessante artikler...