Comment ajuster automatiquement les lignes/colonnes dans VBA ?
Points clés
- Dans VBA, vous pouvez utiliser la méthode AutoFit pour ajuster automatiquement les lignes, les colonnes et même une feuille de calcul entière.
- Vous devez spécifier la plage , puis vous pouvez utiliser la méthode AutoFit.
Ajuster automatiquement une colonne
Disons que vous voulez ajuster automatiquement la colonne A, le code serait quelque chose comme ci-dessous :
Range("A1").EntireColumn.AutoFit
Dans la ligne de code ci-dessus, vous avez utilisé la propriété EntireColumn pour faire référence à la colonne entière de la cellule A1.
Comme vous êtes dans une feuille de calcul, vous pouvez également utiliser la propriété columns et écrire un code comme ci-dessous.
Columns(1).AutoFit
Ajuster automatiquement une ligne
De la même manière, vous pouvez écrire du code pour ajuster automatiquement une ligne. Disons que vous voulez ajuster automatiquement la ligne 5, le code serait :
Range("A5").EntireRow.AutoFit
Et si vous souhaitez utiliser la propriété row, vous pouvez utiliser le code comme suit.
Rows(5).AutoFit
AutoFit UsedRange (lignes et colonnes)
Supposons maintenant que vous souhaitiez uniquement ajuster automatiquement les colonnes et les lignes contenant des données. Dans VBA, il existe une propriété appelée plage utilisée que vous pouvez utiliser. Donc, le code serait.
ActiveSheet.UsedRange.EntireColumn.AutoFit
ActiveSheet.UsedRange.EntireRow.AutoFit
Et si vous souhaitez utiliser une feuille de calcul spécifique, le code le serait.
Worksheets("Sheet1").UsedRange.EntireColumn.AutoFit
Worksheets("Sheet1").UsedRange.EntireRow.AutoFit
Ajuster automatiquement la feuille de calcul entière
Et si vous souhaitez faire référence à toutes les colonnes et lignes de la feuille de calcul, vous pouvez utiliser la propriété « CELLULES ». Voici le code.
Worksheets("Sheet1").Cells.EntireColumn.AutoFit
Worksheets("Sheet1").Cells.EntireRow.AutoFit
Ou vous pouvez également utiliser l’instruction WITH de VBA pour écrire un code comme celui ci-dessous.
With Worksheets("Sheet1").Cells
.EntireColumn.AutoFit
.EntireRow.AutoFit
End With