Comment modifier la largeur des colonnes dans VBA (avec exemples)
Vous pouvez utiliser les méthodes suivantes pour modifier la largeur des colonnes dans Excel à l’aide de VBA :
Méthode 1 : modifier la largeur d’une colonne
Sub ChangeColumnWidth()
Columns("B").ColumnWidth = 20
End Sub
Cette macro particulière modifie la largeur de la colonne B à 20 .
Remarque : La largeur par défaut des colonnes dans Excel est de 8,29 .
Méthode 2 : modifier la largeur de plusieurs colonnes
Sub ChangeColumnWidth()
Columns("B:D").ColumnWidth = 20
End Sub
Cette macro particulière modifie la largeur de toutes les colonnes dans la plage de B à D à 20 .
Méthode 3 : ajustement automatique de la largeur de plusieurs colonnes
Sub ChangeColumnWidth()
Columns("B:D").AutoFit
End Sub
Cette macro particulière ajuste automatiquement la largeur de chaque colonne dans la plage de B à D pour qu’elle soit aussi large que nécessaire pour afficher la cellule la plus longue de chaque colonne.
Les exemples suivants montrent comment utiliser chacune de ces méthodes en pratique avec l’ensemble de données suivant dans Excel :
Exemple 1 : modifier la largeur d’une colonne
Nous pouvons créer la macro suivante pour changer la largeur de la colonne B à 20 :
Sub ChangeColumnWidth()
Columns("B").ColumnWidth = 20
End Sub
Lorsque nous exécutons cette macro, nous recevons le résultat suivant :
Notez que seule la largeur de la colonne B (la colonne « Points ») est passée à 20 tandis que la largeur de toutes les autres colonnes est restée la même.
Exemple 2 : modifier la largeur de plusieurs colonnes
Nous pouvons créer la macro suivante pour modifier la largeur des colonnes B à D à 20 :
Sub ChangeColumnWidth()
Columns("B:D").ColumnWidth = 20
End Sub
Lorsque nous exécutons cette macro, nous recevons le résultat suivant :
Notez que la largeur de chaque colonne de B à D est passée à 20 tandis que la largeur de la colonne A est restée la même.
Exemple 3 : Ajustement automatique de la largeur de plusieurs colonnes
Nous pouvons créer la macro suivante pour ajuster automatiquement la largeur de chaque colonne de A à D afin qu’elle soit aussi large que nécessaire pour afficher la cellule la plus longue de chaque colonne.
Sub ChangeColumnWidth()
Columns("A:D").AutoFit
End Sub
Lorsque nous exécutons cette macro, nous recevons le résultat suivant :
Notez que la largeur de chaque colonne a été automatiquement ajustée pour être aussi large que nécessaire pour afficher la cellule la plus longue de chaque colonne.
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans VBA :
VBA : Comment compter le nombre de colonnes utilisées
VBA : Comment trouver la dernière colonne utilisée
VBA : comment supprimer des colonnes