UsedRange - Trouver la dernière cellule, colonne ou ligne utilisée
Le code suivant renverra une boîte de message indiquant le nombre total de lignes utilisées dans une feuille de calcul. Les lignes vides sont considérées comme utilisées si les données suivent la ligne vide.
1 | MsgBox ActiveSheet.UsedRange.Rows.Count |
Vous devez exécuter une boucle sur une feuille mais vous ne savez pas où s'arrêtent les données ? ActiveSheet.UsedRange.Rows.Count peut aider.
Mets ça dans un module :
123456789 | Sous LastRow()Dim LastRow en tant qu'entierLastRow = ActiveSheet.UsedRange.Rows.CountMsgBox LastRowFin du sous-marin |
123456789 | Sous LastCol()Dim LastCol en tant qu'entierLastCol = ActiveSheet.UsedRange.Col.CountMsgBox LastColFin du sous-marin |
Trouver la première cellule vide
En utilisant VBA, vous devrez peut-être écrire dans la première cellule vide ou après la dernière ligne utilisée dans une colonne. Il n'est pas nécessaire de faire une boucle pour trouver cela, le code suivant le fait pour vous.
Dans cet exemple, le code écrira « FirstEmpty » dans la première cellule vide de la colonne « d »
1234 | Sous-public public AfterLast()ActiveSheet.Range("d" & ActiveSheet.Rows.Count).End(xlUp).Offset(1, 0).Value = "FirstEmpty"Fin du sous-marin |
Compter les colonnes utilisées dans la feuille de calcul
Le code suivant renverra dans une boîte de message le nombre total de colonnes utilisées dans une feuille de calcul. Les colonnes vides sont considérées comme utilisées si les données suivent la colonne vide.
1 | MsgBox ActiveSheet.UsedRange.Columns.Count |
Dernière cellule utilisée - Problèmes
Quand j'ai besoin de For… Next… Parcourez une colonne entière, j'utilise généralement ActiveSheet.UsedRange.Rows.Count pour trouver où m'arrêter. J'ai toujours eu de la chance avec cette approche.
Je suis également conscient que parfois Excel pense que la dernière ligne existe quelque part, mais la ligne est en fait vide. J'ai vu cela plusieurs fois après l'importation de données. De BeyondTechnology :
L'objet Feuille de calcul Plage d'occasion ne fonctionne pas toujours car la plage utilisée (ou « zone sale ») d'une feuille de calcul peut être plus grande que la zone réellement remplie avec vos enregistrements.