Excel 2007 : Ajustement automatique de la hauteur de ligne

Guy_L Messages postés 175 Date d'inscription samedi 16 septembre 2006 Statut Membre Dernière intervention 19 septembre 2024 - 18 sept. 2024 à 10:53
Guy_L Messages postés 175 Date d'inscription samedi 16 septembre 2006 Statut Membre Dernière intervention 19 septembre 2024 - 19 sept. 2024 à 13:21

Bonjour,

C'est une question que je sais récurrente pour laquelle j'ai exploré de nombreux forums sans trouver la solution efficace.

J'ai un fichier avec des cellules contenant de longs textes ponctués de retours à la ligne (ALT+Entrée). Or si l'ajustement automatique de certaines lignes fonctionne bien pour certaines d'entre-elles, d'autres, en revanche, sont réduites au point de tronquer la partie basse du texte de la cellule.

Je précise qu'il n'y a pas de cellules fusionnées sur les lignes concernées mais que le renvoi à la ligne est activé. Voici les différents tests que j'ai déjà effectués sans succès:

Copier la cellule concernée dans un fichier vierge (collage simple, collage spécial uniquement de la "valeur" contenue (sans le formatage), collage du texte privé de ses retours à la ligne, suppression de tout formatage de la cellule hormis le renvoi à la ligne (nécessaire pour ne pas avoir une cellule de largeur excessive).

J'ai également trouvé ce script VBA que j'ai testé, toujours sans plus de succès:

Private Sub Worksheet_Activate()
    Columns("A:AA").EntireColumn.AutoFit
End Sub

Aucune de ces tentatives n'a permis que la cellule s'ajuste à la bonne hauteur. Il est évidemment possible de l'ajuster manuellement, mais à quoi bon avoir une fonction automatique si elle ne fonctionne pas pour une raison inconnue ?

Ce problème a t-il été identifié ?

D'avance, merci

A voir également:

7 réponses

Bruno83200_6929 Messages postés 211 Date d'inscription jeudi 18 juin 2020 Statut Membre Dernière intervention 19 septembre 2024 34
18 sept. 2024 à 12:25

Bonjour,

Le problème que vous décrivez dans Excel, où l'ajustement automatique de la hauteur des cellules ne fonctionne pas correctement malgré l'activation du renvoi à la ligne, est en effet bien connu et peut être frustrant. 

Ce script VBA légèrement modifié qui pourrait mieux fonctionner en forçant un ajustement manuel de la hauteur en fonction du contenu de chaque cellule.

Sub AjustementHauteurCellules()
    Dim cell As Range
    Dim ligne As Range
    
    ' Ajuster la hauteur pour toutes les lignes de la feuille active
    For Each ligne In ActiveSheet.UsedRange.Rows
        ligne.WrapText = True ' Activer le renvoi à la ligne
        ligne.EntireRow.AutoFit ' Ajuster la hauteur de la ligne automatiquement
        
        ' Correction manuelle pour les cellules avec beaucoup de retours à la ligne
        For Each cell In ligne
            If InStr(cell.Value, Chr(10)) > 0 Then ' Si un retour à la ligne existe (ALT+Entrée)
                cell.RowHeight = Application.Max(cell.RowHeight, cell.Height + 5)
            End If
        Next cell
    Next ligne
End Sub

0
Guy_L Messages postés 175 Date d'inscription samedi 16 septembre 2006 Statut Membre Dernière intervention 19 septembre 2024 1
18 sept. 2024 à 13:28

Merci, j'ai testé mais ça ne semble pas fonctionner. Pour illustrer mon problème, j'ai créé de toutes pièces un fichier avec une seule cellule remplie de texte et j'ai effectué les mêmes essais. Eh bien; c'est pareil. Comme si Excel ne savait pas faire cet ajustement au-delà d'une certaine quantité de texte (dans mon fichier originel, il y a 1036 mots dans la cellule, ici, il y en a 843, donc beaucoup moins)

Voici le fichier (je ne sais pas comment le joindre autrement)

https://www.transfernow.net/dl/20240918c84xDFeK

0
Bruno83200_6929 Messages postés 211 Date d'inscription jeudi 18 juin 2020 Statut Membre Dernière intervention 19 septembre 2024 34
18 sept. 2024 à 13:50

Je viens d'essayer d’ajouter deux retours à la ligne supplémentaires en fin de texte dans la cellule concernée.

J'ai appuyé deux fois de plus sur ALT+Entrée pour insérer deux lignes vides supplémentaires. J'ai réajusté manuellement la hauteur de la cellule pour découvrir la totalité du texte.

Cela peut forcer Excel à recalculer la hauteur de la cellule correctement.

J'ai enregistré la modification et j'ai fermé le fichier. En ouvrant de nouveau le fichier, la cellule A1 est visible dans son intégralité.

Est-ce juste un hasard ?

0
Guy_L Messages postés 175 Date d'inscription samedi 16 septembre 2006 Statut Membre Dernière intervention 19 septembre 2024 1
18 sept. 2024 à 18:44

Je ne sais pas comment vous avez fait car si je place mon curseur sur la ligne du bas, je ne peux pas étendre davantage la cellule manuellement. D'ailleurs, la hauteur maximum tolérée semble être 409. Je n'ai donc pas pu tester ça chez moi.

0
Bruno83200_6929 Messages postés 211 Date d'inscription jeudi 18 juin 2020 Statut Membre Dernière intervention 19 septembre 2024 34
18 sept. 2024 à 19:15

Écoutez, je viens d'ouvrir à nouveau votre fichier, et la cellule A1 est toujours lisible dans son intégralité.

Je vous retourne le fichier, essayez de l'ouvrir de votre côté.

https://www.cjoint.com/c/NIsro5Oi8Zd


0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Raymond PENTIER Messages postés 58651 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 19 septembre 2024 17 198
18 sept. 2024 à 19:26

Bonjour Guy.

Excel n'est pas prévu pour ce genre d'exercice.

  • Tu peux remplacer le tableau Excel par un tableau Word.
  • Tu peux aussi saisir tes longs textes dans des fichiers séparés et les appeler par lien hypertexte.

0
Guy_L Messages postés 175 Date d'inscription samedi 16 septembre 2006 Statut Membre Dernière intervention 19 septembre 2024 1
18 sept. 2024 à 19:36

C'est une réponse en effet, mais elle n'explique pas la raison de ce problème quand d'autres cellules / lignes n'ont pas le même comportement.

Bruno : j'ai ouvert le fichier chez moi. La cellule était lisible jusqu'à la ligne que j'ai coloré en vert. J'ai pu étirer la ligne jusqu'à celle en rouge maxi, le reste n'est plus lisible. https://www.cjoint.com/c/NIsrHlV74wE

0
Raymond PENTIER Messages postés 58651 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 19 septembre 2024 17 198
19 sept. 2024 à 02:21

.

L'utilisation d'Excel obéit à des limitations.

.

Pour les versions Excel pour Microsoft 365, Excel 2021, Excel 2019, Excel 2016 les spécifications sont les suivantes =======>

.

.

Pour les versions plus anciennes, certaines spécifications peuvent être inférieures.

0
Guy_L Messages postés 175 Date d'inscription samedi 16 septembre 2006 Statut Membre Dernière intervention 19 septembre 2024 1
Modifié le 19 sept. 2024 à 13:21

Merci. En effet, comme c'est la version 2007, voici les limites pour cette version:

Or les caractéristiques de la cellule problématique sont:

- Largeur de colonne 108,29 (255)

- Hauteur de ligne 300 (409)

- Sauts de page 0 (1 026)

- Nombre total de caractères qu’une cellule peut contenir 5801 (32 767)

- Nombre maximum de sauts de ligne par cellule 34 (253)

Je suis donc très en-deçà des limites

0