J'ai une cellule avec un contenu texte enveloppé dans Excel et je souhaite la formater de sorte que sa hauteur s'adapte au contenu pouvant s'étendre sur plusieurs lignes. Comment puis-je obtenir ce comportement?
De http://support.Microsoft.com/kb/149663
Pour ajuster la hauteur de la ligne à tout le texte d'une cellule, procédez comme suit:
Sélectionnez la ligne.
Dans Microsoft Office Excel 2003 et dans les versions antérieures d'Excel, pointez sur Ligne dans le menu Format, puis cliquez sur Ajuster automatiquement.
Dans Microsoft Office Excel 2007, cliquez sur l'onglet Accueil, cliquez sur Format dans le groupe Cellules, puis cliquez sur Ajuster la hauteur de ligne.
Fonctionne également lorsque toutes les lignes sont sélectionnées
Essayer
Sélectionnez la colonne -> colonne du bouton droit de la souris -> Formater les cellules -> onglet Alignement -> Envelopper le texte
Notez que l'ajustement automatique ne fonctionne pas sur les cellules fusionnées. Tu dois le faire manuellement.
Voir cette réponse de Microsoft:
S'il ne le fait pas automatiquement, placez votre curseur sur la petite ligne entre les numéros de ligne (ex: entre 1 et 2) et double-cliquez sur la ligne, ce qui redimensionnera la ligne (directement au-dessus de la petite ligne, dans l'exemple: 1). afin que tout soit visible (d'un point de vue vertical).
J'ai créé le code VB suivant pour redimensionner la ligne d'en-tête lorsqu'une cellule comprise dans une plage (B2: B1500), car les valeurs de date supérieures à 28/12/2014 provoqueraient l'en-tête pour avertir que ces dates, en une feuille de temps, entrerait dans la semaine 1 de 2015:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim KeyCells As Range
' The variable KeyCells contains the cells that will
' cause an Action when they are changed.
Set KeyCells = Range("B2:B1500")
If Not Application.Intersect(KeyCells, Range(Target.Address)) _
Is Nothing Then
' Change the height of the header row when one of the defined cdlls is changed
Rows("1:1").EntireRow.AutoFit
End If
End Sub
Connaissez-vous la macro? Mettez le code suivant dans
Application.ActiveCell.WrapText = True
dans votre sous-routine Worksheet_SelectionChange.
Une solution VBA doit utiliser les éléments suivants:
Call Application.ActiveCell.AutoFit
Le seul moyen de le faire fonctionner correctement est de mettre en surbrillance la feuille entière avec CTRL-A, de désélectionner le bouton "Envelopper le texte" dans la barre d’outils, puis de le sélectionner à nouveau. Aucun autre paramètre ne change, mais chaque ligne a maintenant la hauteur "correcte" pour son contenu.