Redimensionner VBA

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 la cellule à partir de laquelle 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 du numéro 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.

Vous pouvez télécharger ce modèle Excel de redimensionnement VBA ici - Modèle Excel de redimensionnement 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.

Voici les données que nous utilisons pour cet exemple.

Donc, 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:

Plage Sub Resize_Example () ("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 la taille de la colonne pour cela, entrez la manière dont vous devez sélectionner les colonnes, 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 une cellule vide  et pour la taille de la colonne, nous 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 une cellule vide  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 

Ce que ce code fera, c'est qu'il sélectionnera seulement trois lignes, y compris la ligne de cellule active, mais aucune colonne supplémentaire.

Exemple # 3

Utilisez Redimensionner pour sélectionner des plages inconnues. Le redimensionnement est mieux utilisé lorsque vous souhaitez sélectionner une plage de cellules inconnue. Par exemple, regardez l'image ci-dessous de la plage de données.

Il contient des données de toutes les manières de la colonne A à la colonne P et par ligne, nous avons jusqu'à la 700ème ligne.

Supposons que vous savez que vos données continueront de changer et que vous souhaitez sélectionner la plage de données de temps en temps en modifiant manuellement le numéro de ligne et de colonne. Cependant, en utilisant la propriété VBA RESIZE, nous pouvons le faire facilement.

Regardez le code ci-dessous.

Code:

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

J'ai d'abord déclaré deux variables pour trouver la dernière ligne utilisée (LR) et la dernière colonne utilisée (LC).

 Dim LR As Long Dim LC As Long 

Puisque nos données se trouvent dans la feuille de calcul nommée «Données de vente», nous choisissons cette feuille de calcul en utilisant le code ci-dessous.

Feuilles de calcul («Données de vente»). Sélectionnez

Le code ci-dessous trouvera maintenant la dernière ligne utilisée et la dernière colonne utilisée.

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

LC = Cellules (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.