42 votes

Quand Excel décide-t-il de faire déborder le texte dans les cellules adjacentes, ou de le couper à la frontière ?

Dans Excel, 2010 ou toute autre version probablement, si j'entre dans une cellule un long texte sur une seule ligne qui est plus long que la largeur de la cellule, Excel rend parfois le texte à travers les cellules adjacentes suivantes ; d'autres fois, il est coupé à la limite avec la cellule adjacente à droite.

J'aimerais savoir comment Excel décide quoi faire, afin que je puisse mieux contrôler mes mises en page. Notez que je ne veux pas utiliser la fusion de cellules, car cela est parfois inapproprié. De plus, j'ai déjà essayé de "Supprimer tout" le formatage de toutes les cellules concernées mais cela ne semble pas révéler grand-chose.

Des idées ? Merci.

64voto

F Boucheros Points 346

Pour qu'un texte dépasse le bord d'une cellule, les conditions suivantes doivent être remplies :

  • La cellule ne doit pas avoir l'option "Retour à la ligne" activée

  • La cellule ne doit pas être fusionnée

  • La cellule doit contenir une valeur qui dépasse la largeur de la cellule

  • La cellule adjacente doit être vide* et non fusionnée

  • La cellule doit avoir l'un des alignements horizontaux suivants :

    • Général
    • À gauche (Retrait)
    • Centré
    • À droite (Retrait)
    • Centré sur la sélection
      (Le bord droit chevauche la cellule à gauche ; le centre chevauche des deux côtés.)
  • Le contenu de la cellule ne doit pas être pivoté (c'est-à-dire que l'orientation est réglée sur 0°) (Excel 2010 seulement ?)

  • La cellule contient une valeur textuelle. Les valeurs numériques et les dates sont converties en ####, ou en notation scientifique, au lieu de chevaucher les cellules vides adjacentes.

  • La feuille de calcul ne doit pas avoir l'option "Afficher les formules" activée

Je crois que ce sont toutes les conditions nécessaires. Si j'en ai oublié, n'hésitez pas à modifier cette réponse.

*<em>Dans certaines circonstances, une cellule adjacente peut sembler vide, mais ne l'est pas, auquel cas le texte ne débordera pas dans cette cellule, car elle n'est pas vraiment vide. Par exemple, si la cellule adjacente contient une formule se résolvant en</em> <code>""</code><em>, alors elle n'est pas vide.</em>

4voto

J'ai rencontré le même problème, et il ne s'applique que lorsque la valeur dans la cellule est composée de tous les caractères numériques (y compris le point décimal), si la valeur dans la cellule contient des caractères alphabétiques, elle s'étend correctement dans les cellules adjacentes, mais lorsque la valeur est uniquement numérique, ce n'est pas le cas. Cela est vrai même si vous modifiez le format des cellules en texte après que le nombre ait été saisi dans la cellule.

Pour résoudre ce problème, j'ai dû pré-formater les cellules en texte dans Excel, puis coller les données dans les cellules texte en utilisant l'option collage spécial - valeurs.

Une autre solution consiste à mettre un seul guillemet devant un nombre et Excel le traitera comme du texte, lui permettant de s'afficher dans la cellule adjacente.

3voto

aholub7x Points 402

En plus des cas mentionnés dans d'autres réponses, il convient de noter qu'Excel tronquera toujours le débordement de texte si l'option "Afficher les formules" (Ctrl + `) est activée sur la feuille de calcul. Si vous utilisez régulièrement le raccourci clavier Ctrl + 1 pour accéder à la boîte de dialogue "Format de cellule", il est très facile d'activer accidentellement "Afficher les formules", et vous pourriez ne pas remarquer que cela s'est produit. Cela est particulièrement vrai si vous n'avez en fait aucune formule sur la feuille active.

1voto

Eroen Points 6113

Il y a de nombreuses versions, cela dépendait uniquement de si la cellule adjacente était vide ou non. Si quelqu'un pense que ce n'est plus vrai, laissez un commentaire ci-dessous.

1voto

Je ne recommande pas d'utiliser "Clear All" (à moins que vous ne vouliez perdre votre travail !). Excel (au moins à partir de 2013 - je ne suis pas sûr des versions antérieures - bien que je sois presque sûr que la version 2000 ne fonctionnait pas de cette façon) reconnaît une chaîne vide (c'est-à-dire "") comme une valeur et donc même si vous avez une cellule adjacente "vide", vos données ne déborderont pas dans cette cellule.

Ce qui est requis dans la cellule est un nul - j'imagine que cela a été adopté dans Excel afin de le rendre plus aligné avec les bases de données, où les chaînes vides et les nuls sont des choses très différentes.

Sélectionner la cellule et appuyer sur Suppr. placera en réalité un nul dedans. Cependant, si vous avez une grande feuille de calcul, ou si pour une raison quelconque les cellules de votre feuille de calcul sont souvent remplies de chaînes vides, alors une solution rapide est d'écrire une macro qui vérifie les chaînes vides ("") et les remplace par des nuls.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X