XL 2016 Ajustement automatique de la largeur d'une colonne

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

crocrocro

XLDnaute Impliqué
Bonjour,
je n'arrive pas à effectuer l'ajustement automatique de la largeur d'une colonne dans ce cas particulier :
Dans la même cellule j'ai un texte avec des passages à la ligne suivante par Alt + Entrée (ou VbLf en VBA).
Ce qui positionne automatiquement la cellule en Mode "Renvoyer à la ligne automatiquement".
Avec Format -> Ajuster la Largeur des Colonnes, du fait du "Renvoyer à la ligne automatiquement", il n'y a pas d'ajustement de la largeur de la colonne.
Il en est de même en VBA avec des instructions comme Range("A1").Columns.AutoFit , Range("A1").EntireColumn.AutoFit,Range("A:A").AutoFit.
Par exemple dans le fichier joint en cellule A1
Quelqu'un aurait-il une solution ? Avec ou sans VBA
1734874856450.png
 

Pièces jointes

Solution
@Phil69970 , as-tu lu mon post 3 ? J'ai dû faire l'EDIT après ta lecture, désolé !
Ma conclusion :
si avant l'autofit, la colonne est plus petite que la taille après autofit, l'autofit n'a aucun effet.
Il faudrait donc forcer la largeur de la colonne à une taille XXL (ce que j'ai fait avec le code ci-dessous) avant de faire l'Autofit.
C'est quand même tordu 🙃



VB:
CelluleO.ColumnWidth = 255 ' le maximum
    CelluleO.Columns.AutoFit
    Application.ScreenUpdating = True
    Set CelluleI = Nothing
    Set CelluleO = Nothing
End Sub
@Phil69970, très bizarre, çà ne marche pas 8 fois sur 10 en fonction de ce que j'ai fait avant.
C'est en essayant de le mettre en place sur le fichier que j'ai donné en pj sur la discussion Copie texte de word vers Excel dans le post 10 en ayant lancé plusieurs fois la macro par le bouton (actuellement, il n'y a a pas d'autofit de la colonne B2 ou cellule CelluleO.
Et de nouveaux essais en complétant la fin de Sub comme ceci n'a rien donné.
VB:
.....
    Application.ScreenUpdating = True
    'CelluleO.Columns.AutoFit
    Range("B1").Columns.AutoFit
    Set CelluleI = Nothing
    Set CelluleO = Nothing
End Sub
Si tu veux bien faire des essais de ton côté avec le fichier de l'autre discussion ... Merci
[EDIT] j'ai un début d'explication sur le pourquoi cela ne marche pas à tous les coups :
si avant l'autofit, la colonne est plus petite que la taille après autofit, l'autofit n'a aucun effet.
Il faudrait donc forcer la largeur de la colonne à une taille XXL avant de faire l'Autofit.
C'est quand même tordu 🙃
 
Dernière édition:
@Phil69970 , as-tu lu mon post 3 ? J'ai dû faire l'EDIT après ta lecture, désolé !
Ma conclusion :
si avant l'autofit, la colonne est plus petite que la taille après autofit, l'autofit n'a aucun effet.
Il faudrait donc forcer la largeur de la colonne à une taille XXL (ce que j'ai fait avec le code ci-dessous) avant de faire l'Autofit.
C'est quand même tordu 🙃



VB:
CelluleO.ColumnWidth = 255 ' le maximum
    CelluleO.Columns.AutoFit
    Application.ScreenUpdating = True
    Set CelluleI = Nothing
    Set CelluleO = Nothing
End Sub
 
Dernière édition:
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
55
Retour