Ridimensiona VBA - Come utilizzare Resize Property in Excel VBA? (Con esempi)

Ridimensionamento VBA di Excel

Ridimensiona è una proprietà disponibile in VBA per modificare o ridimensionare l'intervallo di celle dalla cella attiva secondo necessità. Ad esempio, supponiamo di essere nella cella B5 e da questa cella, se desideri selezionare 3 righe e due colonne, possiamo modificare la dimensione di un intervallo utilizzando la proprietà RESIZE di VBA.

Sintassi della proprietà di ridimensionamento VBA

Di seguito è la sintassi della proprietà VBA RESIZE.

Intervallo (). Ridimensiona ((Dimensione riga), (Dimensione colonna))

Innanzitutto, dobbiamo fornire da quale cella dobbiamo ridimensionare utilizzando l' oggetto Range .

Quindi utilizzare la proprietà Resize VBA di Excel e in questa proprietà, dobbiamo fornire il limite di dimensione della riga e il limite di dimensione della colonna . In base ai numeri di riga e di colonna forniti, lo ridimensionerà.

Esempi di utilizzo di Resize in VBA

Di seguito sono riportati gli esempi di utilizzo del ridimensionamento in Excel VBA.

Esempio 1

Supponiamo di avere dati dalla cella A1 alla cella B14 e dalla cella A1, se desideri selezionare 3 righe in basso e due colonne a sinistra dell'intervallo, possiamo farlo utilizzando la proprietà RIDIMENSIONA in Excel VBA.

Di seguito sono riportati i dati che stiamo utilizzando per questo esempio.

Innanzitutto, dobbiamo fornire il primo riferimento di cella o punto di partenza utilizzando l'oggetto RANGE. In questo esempio, il punto di partenza è la cella A1.

Codice:

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

Per questo intervallo, usa la proprietà RESIZE.

Codice:

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

Il primo argomento di RESIZE è Row Size, quindi dobbiamo selezionare 3 righe di dati e fornire il valore numerico di 3.

Codice:

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

Il prossimo argomento è Dimensione colonna per questo, inserisci come le colonne devi selezionare. Inserirò 3 colonne.

Codice:

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

Una volta terminato il ridimensionamento, dobbiamo fornire ciò che dobbiamo fare con questo intervallo. Sceglierò solo il metodo "Seleziona" per iniziare.

Codice:

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

Esegui il codice e guarda quante righe e quante colonne selezionerebbe.

Come puoi vedere sopra dalla cella A1, ha selezionato tre righe in basso e tre colonne a destra.

Esempio n. 2

Now take a look at the below VBA code.

In the above code for Row Size, we have supplied blank cells, and for Column Size, we have supplied 3.

Code:

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

Run the code and see how many rows and how many columns it would select.

As you can see, it has select only the active cell row, i.e., 1st row and three columns. This is because, for Row Size, we have supplied blank cells, and for Column Size, we have supplied 3, and accordingly, it has selected the data range.

Now, look at the below code.

Code:

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

What this code will do is it will select only three rows, including the active cell row but no extra columns.

Example #3

Use Resize To Select Unknown Ranges. Resize is best utilized when you want to select an unknown range of cells. For example, look at the below image of the data range.

It has data all the ways from Column A to Column P and row-wise we have up until the 700th row.

Assume you know your data will keep changing, and you want to select the data range every now and then by manually changing the row and column number. However, by using VBA RESIZE property, we can do this easily.

Look at the below code.

Code:

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 the 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

Ora dalla prima cella, stiamo ridimensionando l'intervallo dall'ultima riga utilizzata all'ultima colonna utilizzata e selezionare è il metodo utilizzato. Quindi ora non importa quanto siano grandi i tuoi dati. Selezionerà dinamicamente i dati trovando l'ultima riga utilizzata e l'ultima colonna utilizzata.

Cose da ricordare

  • La proprietà Resize in VBA cambierà la dimensione dell'intervallo dalla cella attiva (inclusa anche la cella attiva).
  • Dobbiamo solo fornire quante righe e quante colonne ridimensionare dalla cella attiva in VBA.
  • Non è possibile utilizzare un numero di riga e colonna negativo per la proprietà RESIZE.

Articoli interessanti...