Redimensionner VBA - Comment utiliser la propriété de redimensionnement dans Excel VBA? (Avec des exemples)

Table des matières

Redimensionner Excel VBA

Redimensionner est une propriété disponible dans VBA pour modifier ou redimensionner la plage de cellules de la cellule active selon les besoins. Par exemple, supposons que vous soyez dans la cellule B5, et à partir de cette cellule, si vous souhaitez sélectionner 3 lignes et deux colonnes, nous pouvons modifier la taille d'une plage en utilisant la propriété RESIZE de VBA.

Syntaxe de la propriété de redimensionnement VBA

Vous trouverez ci-dessous la syntaxe de la propriété VBA RESIZE.

Plage (). Redimensionner ((Taille de ligne), (Taille de colonne))

Tout d'abord, nous devons indiquer à partir de quelle cellule nous devons redimensionner à l'aide de l' objet Range .

Ensuite, utilisez la propriété Excel VBA Resize , et dans cette propriété, nous devons fournir une limite de taille de ligne et une limite de taille de colonne . En fonction des numéros de ligne et des numéros de colonne fournis, il le redimensionnera.

Exemples d'utilisation du redimensionnement dans VBA

Vous trouverez ci-dessous des exemples d'utilisation du redimensionnement dans Excel VBA.

Exemple 1

Supposons que vous ayez des données de la cellule A1 à B14 et de la cellule A1, si vous souhaitez sélectionner 3 lignes vers le bas et deux colonnes à gauche, nous pouvons le faire en utilisant la propriété RESIZE dans Excel VBA.

Vous trouverez ci-dessous les données que nous utilisons pour cet exemple.

Tout d'abord, nous devons fournir la première référence de cellule ou point de départ à l'aide de l'objet RANGE. Dans cet exemple, le point de départ est la cellule A1.

Code:

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

Pour cette plage, utilisez la propriété RESIZE.

Code:

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

Le premier argument de RESIZE est la taille de la ligne, nous devons donc sélectionner 3 lignes de données et fournir la valeur numérique de 3.

Code:

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

L'argument suivant est Taille de colonne pour cela, entrez la manière dont les colonnes que vous devez sélectionner. Je vais entrer 3 colonnes.

Code:

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

Une fois le redimensionnement effectué, nous devons fournir ce que nous devons faire avec cette plage. Je vais simplement choisir la méthode «Select» pour commencer.

Code:

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

Exécutez le code et voyez combien de lignes et combien de colonnes il sélectionnerait.

Comme vous pouvez le voir ci-dessus à partir de la cellule A1, il a sélectionné trois lignes vers le bas et trois colonnes vers la droite.

Exemple # 2

Jetez maintenant un œil au code VBA ci-dessous.

Dans le code ci-dessus pour la taille de la ligne, nous avons fourni des cellules vides et pour la taille de la colonne, nous en avons fourni 3.

Code:

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

Exécutez le code et voyez combien de lignes et combien de colonnes il sélectionnerait.

Comme vous pouvez le voir, il n'a sélectionné que la ligne de cellule active, c'est-à-dire la 1ère ligne et trois colonnes. En effet, pour Taille de ligne, nous avons fourni des cellules vides et pour Taille de colonne, nous en avons fourni 3 et, en conséquence, il a sélectionné la plage de données.

Maintenant, regardez le code ci-dessous.

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

Maintenant, à partir de la première cellule, nous redimensionnons la plage de la dernière ligne utilisée à la dernière colonne utilisée et sélectionnez la méthode utilisée. Alors maintenant, peu importe la taille de vos données. Il sélectionnera dynamiquement les données en trouvant la dernière ligne utilisée et la dernière colonne utilisée.

Choses dont il faut se rappeler

  • La propriété Redimensionner dans VBA modifiera la taille de la plage de la cellule active (y compris la cellule active également).
  • Nous avons juste besoin de fournir le nombre de lignes et le nombre de colonnes à redimensionner à partir de la cellule active dans VBA.
  • Nous ne pouvons pas utiliser de numéro de ligne et de colonne négatif pour la propriété RESIZE.

Articles intéressants...