VBA Fin de plage – Range.End (xlDown, xlUp, xlToRight, xlToLeft)
In this Article
Ce tutoriel vous montre comment utiliser la propriété Range.End en VBA.
La plupart des choses que vous faites manuellement dans un classeur ou une feuille de calcul Excel peuvent être automatisées en code VBA.
Si vous avez une plage de cellules non vierges dans Excel et que vous appuyez sur Ctrl+Flèche vers le bas, votre curseur se déplacera vers la dernière cellule non vierge de la colonne dans laquelle vous vous trouvez. De même, si vous appuyez sur Ctrl+Flèche vers le haut, votre curseur se déplacera vers la première cellule non vide. Il en va de même pour une ligne : utilisez les touches Ctrl+flèche droite ou Ctrl+flèche gauche pour aller au début ou à la fin de cette ligne. Toutes ces combinaisons de touches peuvent être utilisées dans votre code VBA à l’aide de la fonction End de l’objet Range.
Syntaxe de la Propriété Range End
La propriété Range.End vous permet de vous déplacer vers une cellule spécifique de la région actuelle avec laquelle vous travaillez.
expression.End (Direction)
l’expression est l’adresse de la cellule (Plage) de la cellule à partir de laquelle vous souhaitez commencer, par ex : Range(« A1 »)
END est la propriété de l’objet Range contrôlé.
Direction est la constante Excel que vous pouvez utiliser. Il y a 4 choix possibles – xlDown, xlToLeft, xlToRight et xlUp.
Déplacement Vers la Dernière Cellule
La procédure ci-dessous vous permet de vous déplacer vers la dernière cellule de la région actuelle des cellules dans laquelle vous vous trouvez.
Sub AllerÀLaDernièreCellule()
'Déplacement vers la dernière cellule de la région actuelle
Range("A1").End(xlDown).Select
End Sub
Compter des Rangées
La procédure suivante vous permet d’utiliser la constante xlDown avec la propriété Range End pour compter le nombre de lignes de votre région actuelle.
Sub TrouverDernièreLigneDeLaPlage()
Dim rg As Long
Range("A1").Select
'Obtient la dernière rangée de la région
rg = Range("A1").End(xlDown).Row
'Affiche combien de rangée sont utilisée dans la région
MsgBox "La dernière rangée utilisée dans cette plage est " & rg
End Sub
Tandis que celle ci-dessous comptera les colonnes dans la plage en utilisant la constante xlToRight.
Sub TrouverDernièreColonneDeLaPlage()
Dim col As Long
Range("A1").Select
'Obtient la dernière colonne de la région
col = Range("A1").End(xlToRight).Column
'Affiche combien de colonnes sont utilisée dans la région
MsgBox "La dernière colonne utilisée dans cette plage est " & col
End Sub
Création d’un Tableau de Plage
La procédure ci-dessous nous permet de commencer par la première cellule d’une plage, puis d’utiliser la propriété End(xlDown) pour trouver la dernière cellule de la plage de cellules. Nous pouvons ensuite redimentionner notre tableau avec le nombre total de lignes de la plage, ce qui nous permet de boucler la plage de cellules.
Sub PopulerTableau()
'Déclaration du tableau
Dim strSuppliers() As String
'Déclaration de l'entier qui servira à compter
Dim n As Integer
'Compte les rangées
n = Range("B1", Range("B1").End(xlDown)).Rows.Count
'Initialise le tableau
ReDim strClients(n)
'Déclaration de l'entier qui servira d'itérateur dans la boucle
Dim i As Integer
'Popule le tableau avec les valeurs de la plage
For i = 0 To n
strClients(i) = Range("B1").Offset(i, 0).Value
Next i
'Affiche les données du tableau dans une boite de message
MsgBox Join(strClients, vbCrLf)
End Sub
Lorsque nous exécutons cette procédure, elle renvoie la boîte de message suivante.
VBA Coding Made Easy
Stop searching for VBA code online. Learn more about AutoMacro - A VBA Code Builder that allows beginners to code procedures from scratch with minimal coding knowledge and with many time-saving features for all users!Learn More!