VBA endre størrelse | Hvordan bruker du Endre størrelse på eiendom i Excel VBA? (Med eksempler)

Excel VBA endre størrelse

Endre størrelse er en egenskap tilgjengelig i VBA for å endre eller endre størrelse på celleområdet fra den aktive cellen etter behov. Anta for eksempel at du er i cellen B5, og fra denne cellen hvis du vil velge 3 rader og to kolonner, kan vi endre størrelsen på et område ved å bruke RESIZE-egenskapen til VBA.

Syntaks for VBA Resize Property

Nedenfor er syntaksen for eiendommen VBA RESIZE.

Område (). Endre størrelse ([Radstørrelse], [Kolonnestørrelse])

Først må vi levere fra hvilken celle vi trenger å endre størrelse ved å bruke Range- objektet.

Bruk deretter Excel VBA Resize- egenskap, og i denne egenskapen må vi angi radestørrelse og kolonnestørrelse . Basert på de angitte radnumrene og kolonnenummeret, endres størrelsen på den.

Eksempler på bruk av Resize i VBA

Nedenfor er eksemplene på bruk av resize i excel VBA.

Du kan laste ned denne VBA Resize Excel-malen her - VBA Resize Excel Template

Eksempel 1

Anta at du har data fra A1 til B14-celle og fra A1-celle hvis du vil velge 3 rader ned og to kolonner i venstre rekkevidde, kan vi gjøre dette ved å bruke RESIZE-egenskapen i Excel VBA.

Nedenfor er dataene vi bruker for dette eksemplet.

Så først må vi levere den første cellereferansen eller startpunktet ved å bruke RANGE-objektet, i dette eksemplet er startpunktet A1-celle.

Kode:

Sub Resize_Example () Range ("A1"). Slutt Sub

Bruk RESIZE-egenskapen for dette området.

Kode:

 Sub Resize_Example () Range ("A1"). Resize (End Sub 

Det første argumentet med RESIZE er radstørrelse, så vi må velge 3 rader med dataene og oppgi den numeriske verdien 3.

Kode:

 Sub Resize_Example () Range ("A1"). Resize (3, End Sub 

Neste argument er Kolonnestørrelse for dette angi hvordan kolonner du trenger å velge, jeg vil skrive inn 3 kolonner.

Kode:

 Sub Resize_Example () Range ("A1"). Resize (3,3) End Sub 

Når størrelsen er endret, må vi levere det vi trenger å gjøre med dette området. Jeg velger bare "Velg" -metoden for å starte.

Kode:

 Sub Resize_Example () Range ("A1"). Resize (3, 3). Velg End Sub 

Kjør koden og se hvor mange rader og hvor mange kolonner den vil velge.

Som du kan se ovenfor fra A1-cellen, har den valgt tre rader ned og tre kolonner til høyre.

Eksempel 2

Ta en titt på VBA-koden nedenfor.

I ovennevnte kode for Radstørrelse har vi levert tom celle  og for Kolonnestørrelse har vi levert 3.

Kode:

 Sub Resize_Example () Range ("A1"). Resize (0, 3). Velg End Sub 

Kjør koden og se hvor mange rader og hvor mange kolonner den vil velge.

Som du kan se, har den bare valgt den aktive cellelinjen, dvs. første rad og tre kolonner. Dette er fordi for radstørrelse har vi levert tom celle  og for kolonnestørrelse har vi levert 3, og følgelig har den valgt dataområdet.

Nå, se på koden nedenfor.

Kode:

 Sub Resize_Example () Range ("A1"). Resize (3). Velg End Sub 

Hva denne koden vil gjøre er at den bare velger tre rader inkludert den aktive cellelinjen, men ingen ekstra kolonner.

Eksempel 3

Bruk Endre størrelse for å velge ukjente områder. Endre størrelse brukes best når du vil velge et ukjent celleområde. Se for eksempel på bildet nedenfor av dataområdet.

Den har data hele veien fra kolonne A til kolonne P og radmessig har vi frem til 700. rad.

Anta at du vet at dataene dine vil fortsette å endres, og at du vil velge dataområdet nå og da ved å endre rad- og kolonnenummeret manuelt. Ved å bruke VBA RESIZE-egenskapen kan vi imidlertid gjøre dette enkelt.

Se på koden nedenfor.

Kode:

 Sub Resize_Example1() Dim LR As Long Dim LC As Long Worksheets("Sales Data").Select LR = Cells(Rows.Count, 1).End(xlUp).Row LC = Cells(1, Columns.Count).End(xlToLeft).Column Cells(1, 1).Resize(LR, LC).Select End Sub 

First I have declared two variables to find the last used row (LR) and last used column (LC).

 Dim LR As Long Dim LC As Long 

Since our data is in the worksheet named “Sales Data” we are choosing this worksheet by using the below code.

Worksheets(“Sales Data”).Select

Now below code will find the last used row and last used column.

LR = Cells(Rows.Count, 1).End(xlUp).Row

LC = Cells(1, Columns.Count).End(xlToLeft).Column

Now from the first cell, we resizing the range from last used row to last used column and select is the method used. So now it doesn’t matter how big your data is it will dynamically select the data by finding the last used row and last used column.

Things to Remember

  • Resize property in VBA will change the size of the range from the active cell (including the active cell as well).
  • We just need to provide how many rows and how many columns to be resized from the active cell in VBA.
  • We cannot use negative row & column number for RESIZE property.