VBA excel modifier la largeur des colonnes
Résolu
pzyko
Messages postés
34
Date d'inscription
Statut
Membre
Dernière intervention
-
pzyko Messages postés 34 Date d'inscription Statut Membre Dernière intervention -
pzyko Messages postés 34 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je suis débutant en VBA et je cherche à faire en sorte que la largeur de mes colonnes s'ajuste automatiquement en fonction de la taille du texte contenu dans les cellules de ces colonnes. Toutefois, j'aimerai que la largeur minimale de mes colonnes soit de 10. En effet, certaines de mes colonnes deviennent trop petites en s'ajustant.
Pour cela, j'ai créé ceci :
Sheets("Invisible").Columns("A:K").AutoFit
If Sheets("Invisible").Columns("A:A").ColumnWidth < 10 Then
Sheets("Invisible").Columns("A:A").ColumnWidth = 10
End If
If Sheets("Invisible").Columns("B:B").ColumnWidth < 10 Then
Sheets("Invisible").Columns("B:B").ColumnWidth = 10
End If
If Sheets("Invisible").Columns("C:C").ColumnWidth < 10 Then
Sheets("Invisible").Columns("C:C").ColumnWidth = 10
End If
Le problème, c'est que j'ai fait cela jusqu'à la colonne K et je devrais surement le faire avec plus de colonnes. Par conséquent, je me demande s'il n'est pas possible de ne pas réécrire le même code pour chaque colonne.
Je vous remercie pour votre aide :)
je suis débutant en VBA et je cherche à faire en sorte que la largeur de mes colonnes s'ajuste automatiquement en fonction de la taille du texte contenu dans les cellules de ces colonnes. Toutefois, j'aimerai que la largeur minimale de mes colonnes soit de 10. En effet, certaines de mes colonnes deviennent trop petites en s'ajustant.
Pour cela, j'ai créé ceci :
Sheets("Invisible").Columns("A:K").AutoFit
If Sheets("Invisible").Columns("A:A").ColumnWidth < 10 Then
Sheets("Invisible").Columns("A:A").ColumnWidth = 10
End If
If Sheets("Invisible").Columns("B:B").ColumnWidth < 10 Then
Sheets("Invisible").Columns("B:B").ColumnWidth = 10
End If
If Sheets("Invisible").Columns("C:C").ColumnWidth < 10 Then
Sheets("Invisible").Columns("C:C").ColumnWidth = 10
End If
Le problème, c'est que j'ai fait cela jusqu'à la colonne K et je devrais surement le faire avec plus de colonnes. Par conséquent, je me demande s'il n'est pas possible de ne pas réécrire le même code pour chaque colonne.
Je vous remercie pour votre aide :)
A voir également:
- Vba largeur colonne automatique
- Déplacer colonne excel - Guide
- Réponse automatique thunderbird - Guide
- Trier colonne excel - Guide
- Longueur largeur ✓ - Forum Loisirs / Divertissements
- Recherche automatique des chaînes ne fonctionne pas - Guide
6 réponses
Re,
une facon de faire:
une facon de faire:
Sub Width_Columns()
Dim TCol, Point, FTCol
Application.ScreenUpdating = False
TCol = Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
FTCol = UBound(TCol)
With Sheets("Invisible")
.Columns("A:K").AutoFit
For Point = 0 To FTCol
If .Columns(TCol(Point)).ColumnWidth < 10 Then
.Columns(TCol(Point)).ColumnWidth = 10
End If
Next Point
End With
Application.ScreenUpdating = True
End Sub