je suis sur un petit programme VB sur Excel en amateur que je suis et souhaite que la hauteur de ligne s'ajuste automatiquement. En fait sur ma ligne j'ai 6 cellules fusionnées et cette cellule comporte du texte plus long que la longueur de la cellule 2 fois sur 3. Le retour à la ligne automatique est activé dessus, et j'aimerais que quand ma macro balance du texte dans cette cellule, qu'ensuite la hauteur de ligne s'ajuste.
J'ai essayé ceci:
With Range(Cells(i, 1), Cells(i, 6))
.Rows.Autofit
End With
et aussi ceci:
Range(Cells(i, 1), Cells(i, 6)).Select
Selection.EntiRow.Autofit
mais ces solutions ajuste la hauteur à 12.75 (hauteur par défaut d'Excel).
Quelqu'un aurait une solution à mon pb?
Merci!
"Pour réussir dans la vie, il y a 2 règles à connaître. La première: ne jamais divulguer tout son savoir."
A voir également:
[déplacé VB.NET -> VBA] VBA-Excel: ajuster hauteur de ligne automatiquement
C'est un vieux problème, en gros, il faut :
- défusionner
- augmenter la cellule à la largeur des cellules fusionnées
- row.autofit
- refusionner
- remettre la largeur initiale de la cellule
____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Cette propriété sert à autoriser le renvoi à la ligne dans une cellule, ce n'est pas ce que je cherche à faire, je cherche à ajuster la hauteur de toute la ligne pour que tout le texte d'une cellule soit visible (ce texte dans cette cellule est sur plusieurs ligne car la propriété WrapText est sur True, cad que le renvoi à la ligne automatique est activé).
"Pour réussir dans la vie, il y a 2 règles à connaître. La première: ne jamais divulguer tout son savoir."
J'ai alors des difficultés à comprendre ce que tu veux faire.
Mets-nous ici (en texte) ce que tu as
exemple :
|toto est parti chasser le canard dans le marais près de sa ferme|
et ce que tu veux obtenir
|..............|
[..............|
____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Vous n’avez pas trouvé la réponse que vous recherchez ?
ok je vais essayer d'éclaircir mon pb:
j'ai une feuille excel toute simple avec différentes valeurs ou textes dans différentes cellules;
j'ai sur la ligne i les cellules S à Z qui sont fusionnées (Range(Cells(i, 19), Cells(i, 26)) et le renvoi à la ligne automatique est activé (propriété WrapText = True);
dans cette cellule, j'ai du texte, plus long que la longueur de la cellule, donc renvoyé à la ligne, mais comme la hauteur de ligne est celle d'Excel par défaut, je ne vois que la première ligne de la cellule et ne vois donc pas tout mon texte.
A la main, je prend la hauteur de ligne que j'augmente pour voir tout le texte, mais je voudrai programmer ceci en vba pour que la hauteur de ligne s'ajuste en fonction du texte dans la cellule pour que tout le texte soit visible.
"Pour réussir dans la vie, il y a 2 règles à connaître. La première: ne jamais divulguer tout son savoir."
ok j'ai pigé la manip, c'esu un peu du bidouillage je trouve ça dommage que les cellules fusionnées soient le problème, mais la solution bidouillée me va pour ce que je veux.
Merci ;-)
"Pour réussir dans la vie, il y a 2 règles à connaître. La première: ne jamais divulguer tout son savoir."
Si tu as suivi le lien chez microsoft, tu sais que tu n'as aucune autre solution que le bidouillage.
C'était déjà comme ça avec XL97, avant je ne sais plus.