Sélection de cellules dans VBA

Iqra Hasnain 30 janvier 2023
  1. Sélectionnez une seule cellule dans VBA
  2. Sélectionnez une plage de cellules dans VBA
  3. Sélectionnez une plage de cellules non contiguës dans VBA
  4. Sélectionner toutes les cellules d’une feuille de calcul dans VBA
  5. Sélectionnez une ligne dans VBA
  6. Sélectionnez une colonne dans VBA
  7. Sélectionnez la dernière cellule non vide dans une colonne dans VBA
  8. Sélectionnez la dernière cellule non vide d’une ligne dans VBA
  9. Sélectionnez la région actuelle dans VBA
  10. Sélectionnez la cellule relative à une autre cellule dans VBA
  11. Sélectionnez une plage nommée dans VBA
  12. Sélectionnez la cellule sur une autre feuille de calcul dans VBA
  13. Manipuler l’objet Selection en VBA
Sélection de cellules dans VBA

Dans cet article suivant, nous discutons de la sélection de cellules dans VBA et de la manière dont nous pouvons sélectionner la plage de cellules dans VBA.

VBA nous permet de sélectionner une cellule, des plages de cellules ou toutes les cellules de la feuille de calcul. Vous pouvez manipuler la cellule ou le contenu sélectionné à l’aide de l’objet Selection.

Sélectionnez une seule cellule dans VBA

Nous pouvons choisir une cellule dans une feuille de calcul en utilisant la méthode Select. Le code suivant sélectionnera la cellule B2 dans la ActiveWorksheet.

# VBA
Range("B2").Select

Ou nous pouvons utiliser une autre méthode comme indiqué ci-dessous.

# vba
Cells(2, 2).Select

La sortie des deux codes est illustrée ci-dessous.

sélectionner une seule cellule dans VBA

Sélectionnez une plage de cellules dans VBA

Nous pouvons sélectionner un groupe de cellules dans une feuille de calcul en utilisant la technique Select et l’objet Range. Le code suivant sélectionnera A1:B5 comme indiqué ci-dessous.

# VBA
Range("A1:B5").Select

Production:

sélectionner une plage de cellules dans VBA

Sélectionnez une plage de cellules non contiguës dans VBA

Dans VBA, vous pouvez choisir des cellules ou des plages qui ne sont pas côte à côte en divisant les cellules ou les plages à l’aide d’une virgule. Le code suivant vous permettra de sélectionner les cellules B1, D1 et F1, comme indiqué ci-dessous.

# VBA
Range("B1, D1, F1").Select

Production:

sélection d’une plage de cellules non contiguës dans VBA

Nous pouvons également sélectionner des ensembles de plages non contiguës à l’aide de VBA. Le code suivant sélectionnera A1:A5 et B5:B8, comme indiqué ci-dessous.

# VBA
Range("A1:A5, B5:B8").Select

Production:

sélection d’une plage de cellules non contiguës partie 2 dans VBA

Sélectionner toutes les cellules d’une feuille de calcul dans VBA

Nous pouvons sélectionner toutes les cellules d’une feuille de calcul à l’aide de VBA. Le code ci-dessous sélectionnera toutes les cellules d’une feuille de calcul.

# VBA
Cells.Select

Production:

sélection de toutes les cellules à l’aide de la feuille de calcul dans VBA

Sélectionnez une ligne dans VBA

Nous pouvons sélectionner une ligne spécifique dans une feuille de calcul à l’aide de l’objet Row et du numéro d’index de la ligne que nous voulons sélectionner. Le code ci-dessous sélectionnera la première ligne de notre feuille de calcul.

# VBA
Rows(2).Select

Production:

sélectionner une ligne dans VBA

Sélectionnez une colonne dans VBA

Nous pouvons sélectionner une colonne spécifique dans une feuille de calcul à l’aide de l’objet Column et du numéro d’index de la colonne que nous voulons sélectionner. Le code suivant sélectionnera la colonne B dans notre feuille de calcul ci-dessous.

# VBA
Columns(2).Select

Production:

sélection d’une colonne dans VBA

Sélectionnez la dernière cellule non vide dans une colonne dans VBA

Nous avons des données dans les cellules B1, B2, B3 et B4, et nous voulons sélectionner la dernière cellule non vide, qui pourrait être la cellule B4 dans la colonne. Nous pouvons utiliser VBA pour ce faire et la méthode Range.End.

La méthode Range.End peut prendre ces quatre options : xlToLeft, xlToRight, xlUp et xlDown.

Le code ci-dessous sélectionnera la dernière cellule non vide, B4 dans ce cas, si B1 est la cellule active, comme indiqué ci-dessous.

# VBA
Range("B1").End(xlDown).Select

Production:

sélection de la dernière cellule non vide dans une colonne dans VBA

Sélectionnez la dernière cellule non vide d’une ligne dans VBA

Supposons que nous ayons des données dans les cellules A2, B2, C2, D2 et E2, et que nous voulions sélectionner la dernière cellule non vide, qui pourrait être la cellule E2 de la ligne . On peut utiliser VBA et la méthode Range.End.

Le code ci-dessous sélectionnera la dernière cellule non vide, E2 dans ce cas, si A2 est la cellule active, comme indiqué ci-dessous.

# VBA
Range("A2").End(xlToRight).Select

Production:

sélection de la dernière cellule non vide d’une ligne dans VBA

Sélectionnez la région actuelle dans VBA

Nous pouvons utiliser la propriété CurrentRegion de l’objet Range pour sélectionner une plage rectangulaire de cellules vides et non vides autour d’une cellule d’entrée donnée. Si nous avons des données dans les cellules A2, B2 et C2, le code suivant sélectionnera cette région autour de la cellule A2 :

# VBA
Range("A2").CurrentRegion.Select

Production:

sélection de la région actuelle dans VBA

Sélectionnez la cellule relative à une autre cellule dans VBA

Nous pouvons utiliser la propriété Offset pour sélectionner une cellule par rapport à une autre cellule. Le code suivant nous montre comment sélectionner la cellule C3, deux lignes et deux colonnes à proximité de la cellule A1.

# VBA
Range("A1").Offset(2, 2).Select

Production:

sélectionner une seule cellule en utilisant le décalage dans VBA

Sélectionnez une plage nommée dans VBA

Nous pouvons également sélectionner des plages nommées. Disons que nous avons nommé les cellules B1:B4 Code.

Nous pouvons utiliser le code suivant pour sélectionner cette plage nommée, comme indiqué ci-dessous.

# VBA
Range("Code").Select

Production:

sélection d’une plage de cellules nommée dans VBA

Sélectionnez la cellule sur une autre feuille de calcul dans VBA

Nous devons d’abord activer la feuille en utilisant la méthode Worksheets.Activate pour sélectionner une cellule sur une autre feuille de calcul. Le code suivant vous permettra de sélectionner la cellule A4 sur la Sheet2.

# VBA
Worksheets("Sheet2").Activate
Range("A4").Select

Production:

sélection d’une seule cellule à partir d’une autre feuille dans VBA

Manipuler l’objet Selection en VBA

Une fois que l’on a sélectionné une cellule ou une plage de cellules, on peut se référer à l’objet Selection pour manipuler ces cellules. Le code suivant a choisi les cellules B1:D1 et défini la police de ces cellules sur Calibri, le poids de la police sur Gras, le style de police sur Italique et la couleur de remplissage sur Bleu.

# VBA
Sub newFunc()

Range("B1:D4").Select
Selection.Font.Name = "Calibri"
Selection.Font.Bold = True
Selection.Font.Italic = True
Selection.Interior.Color = vbBlue

End Sub

Production:

sélection d’une plage et changement de format dans VBA

Utiliser la construction With dans VBA

Nous pouvons relier l’exemple ci-dessus en utilisant l’instruction With ou End With pour ne faire référence qu’une seule fois à l’objet Selection. Cela permet de continuer à taper et rend normalement votre code plus facile à lire.

# VBA
Sub newFunc()

Range("B1:D4").Select
With Selection
.Font.Name = "Calibri"
.Font.Bold = True
.Font.Italic = False
.Interior.Color = vbBlue

End With
End Sub

Production:

sélection d’une plage à l’aide de construction et changement de format dans VBA