J'ai une cellule avec un contenu de texte enveloppé dans Excel et je souhaite formater la cellule de sorte que sa hauteur s'ajuste pour s'adapter au contenu qui peut s'étendre sur plusieurs lignes. Comment puis-je obtenir ce comportement?
J'ai une cellule avec un contenu de texte enveloppé dans Excel et je souhaite formater la cellule de sorte que sa hauteur s'ajuste pour s'adapter au contenu qui peut s'étendre sur plusieurs lignes. Comment puis-je obtenir ce comportement?
Réponses:
Depuis http://support.microsoft.com/kb/149663
Pour ajuster la hauteur de la ligne pour tenir tout le texte dans 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 Ajustement automatique.
Dans Microsoft Office Excel 2007, cliquez sur l'onglet Accueil, cliquez sur Format dans le groupe Cellules et puis cliquez sur Ajustement automatique de la hauteur de ligne.
Fonctionne également lorsque toutes les lignes sont sélectionnées
Essayer
Sélectionnez la colonne -> colonne clic droit -> Format de cellule -> onglet Alignement -> Retour à la ligne du texte
Wrap Text
désactivez puis réactivez, Excel redimensionnera la hauteur de la ligne pour qu'elle corresponde à la ligne la plus haute. Ne convient pas si la hauteur des lignes change dynamiquement mais si vous avez affaire à du texte statique, cela devrait être OK.
Notez que l'ajustement automatique ne fonctionne pas sur les cellules fusionnées. Tu dois le faire manuellement.
Voir cette réponse 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, cela redimensionnera la ligne (directement au-dessus de la petite ligne, dans l'exemple: 1) pour que tout soit visible (d'un aspect vertical).
Une solution VBA consiste à utiliser les éléments suivants:
Call Application.ActiveCell.AutoFit
La seule façon de le faire fonctionner comme prévu est de mettre en surbrillance la feuille entière avec CTRL-A, de cliquer sur le bouton "Wrap Text" dans la barre d'outils, puis de le sélectionner à nouveau. Aucun autre paramètre ne change, mais chaque ligne a désormais la hauteur «appropriée» pour son contenu.
J'ai créé le code VB suivant pour redimensionner la ligne d'en-tête lorsqu'une cellule dans une plage (B2: B1500) car les valeurs de date supérieures au 28/12/2014 entraîneraient l'en-tête pour afficher un avertissement indiquant que ces dates, dans une feuille de temps, entreraient dans Semaine1 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