IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

Contourner la limitation de la hauteur de ligne de 409 points


Sujet :

Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    Paramétreur de progiciels
    Inscrit en
    Juillet 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Paramétreur de progiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2015
    Messages : 10
    Points : 4
    Points
    4
    Par défaut Contourner la limitation de la hauteur de ligne de 409 points
    Bonjour à tous,

    Après avoir fait pas mal de recherches sans succès pour trouver une astuce pour se libérer de la limitation de la hauteur de ligne sous excel, j'ai fini par arriver à quelque chose de pas trop mal pour pouvoir afficher un texte plus long que la limite imposée par le logiciel.
    Je me suis dit que ça pourrait être utile à ceux qui aurait le même soucis que j'ai eu pour un programme quelconque ou bien même intéressant pour ceux qui aiment résoudre des problèmes.

    Voici ce à quoi je suis arrivé:
    Dans cet exemple, un long texte est dans la cellule "E2" de la feuille 1 et on veut pouvoir afficher l'intégralité dans la cellule "A1" de la feuille 1

    sub gerer_remarques()

    b = 0
    ligne=1
    c=0
    Remarques = Split(ActiveWorkbook.Worksheets(1).Range("A1"), Chr(10)) 'on découpe le texte à chaque retour à la ligne
    Rema = "" 'on vide la variable tampon
    n = UBound(Remarques) ' on récupère le nombre de lignes découpées

    While n > 0
    With Sheets(2).Rows(ligne + c)
    .Insert
    .Copy
    .Offset(-1, 0).PasteSpecial Paste:=xlPasteFormats
    End With 'on insère une ligne identique à celle visée

    If n > 26 Then 'si il y a plus de 26 lignes (limite de lignes dans mon cas, à adapter en fonction de la taille de la cellule et de la police d'écriture)
    For l = 0 + b To 26 + b 'on copie les 26 premières lignes du message dans la variable tampon
    Rema = Rema & Remarques(l) & Chr(10)
    Next
    ActiveWorkbook.Worksheets(2).Range("A" & 1 + c).Value = Rema ' on écrit dans la cellule A1
    Rema = ""

    ElseIf n <= 26 Then 'si on arrive à la fin du message à copier
    For l = UBound(Remarques) - n To UBound(Remarques)
    Rema = Rema & Remarques(l) & Chr(10)
    Next
    ActiveWorkbook.Worksheets(2).Range("A" & 1 + c).Value = Rema
    End If

    c = c + 1 'on passe à la ligne suivante (cellule du dessous)
    n = n - 27 'on précise qu'au prochain tour on ne s'occupe pas des 26 premières lignes (déjà traitées)
    b = b + 27

    Wend

    End sub


    Voila j'espère que mon exemple est compréhensible et que cela aidera.
    cependant cela ne fait qu'écrire un message sur deux/trois/dix cellules distinctes, j'ai essayé de les fusionner mais ça n'a pas résolu le problème.

    Si vous avez de meilleures idées pour pallier au problème de la limitation de la hauteur de cellule n'hésitez pas!
    J'ai l'impression de n'avoir que bidouillé et pas véritablement codé, un exemple plus propre serait le bienvenu

  2. #2
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Si c'est juste pour afficher du texte, il est possible de faire des zones de texte qui n'ont quasiment pas de limite en hauteur.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  3. #3
    Candidat au Club
    Homme Profil pro
    Paramétreur de progiciels
    Inscrit en
    Juillet 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Paramétreur de progiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2015
    Messages : 10
    Points : 4
    Points
    4
    Par défaut
    Bonjour Menhir,
    La quantité d'information est illimitée (ou en tout cas je ne l'atteint pas) mais la zone de texte affichée à l'écran est limitée à 409 points, même pour une zone de texte, d'où mon problème.

  4. #4
    Expert éminent sénior Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Points : 32 866
    Points
    32 866
    Par défaut
    Citation Envoyé par Geoff'rey Voir le message
    la zone de texte affichée à l'écran est limitée à 409 points, même pour une zone de texte.
    Je ne comprends pas ce que tu veux dire.
    Quand je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ActiveSheet.Shapes("ZoneTexte 1").Height = 550
    Ca me génère une zone de texte supérieure à 500 points que je vois entièrement à l'écran.
    Merci de cliquer sur pour chaque message ayant aidé puis sur pour clore cette discussion.

  5. #5
    Candidat au Club
    Homme Profil pro
    Paramétreur de progiciels
    Inscrit en
    Juillet 2015
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Paramétreur de progiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2015
    Messages : 10
    Points : 4
    Points
    4
    Par défaut
    J'avoue ne pas avoir testé de forcer la taille de la cellule puisque je ne connaissais pas la taille finale des messages.
    Mon problème était qu'une cellule contenait un long texte, et que quand je le copiait dans une autre cellule, elle était limitée à 409 points, pour une cellule au format texte, et même en essayant de l'agrandir à la souris.
    Peut-être qu'il est possible de forcer l'affichage, mais cela ne se fait pas automatiquement.

    je ne sais pas si je me fais bien comprendre xD

  6. #6
    Expert éminent sénior

    Profil pro
    Conseil, Formation, Développement - Indépendant
    Inscrit en
    Février 2010
    Messages
    8 421
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Conseil, Formation, Développement - Indépendant

    Informations forums :
    Inscription : Février 2010
    Messages : 8 421
    Points : 16 265
    Points
    16 265
    Par défaut
    Bonjour

    De façon générale, Excel n'est pas fait pour contenir de grands textes.

    Bien en deçà de ces limites, en cas de copie, selon le mode de copie effectué, on risque de perdre du texte.

    De mémoire, la duplication d'un onglet notamment avait ce problème, mais cela a peut-être été amélioré sur les nouvelles version
    Chris
    PowerQuery existe depuis plus de 13 ans, est totalement intégré à Excel 2016 &+. Utilisez-le !

    Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson.
    Confucius

    ----------------------------------------------------------------------------------------------
    En cas de résolution, n'hésitez pas cliquer sur c'est toujours apprécié...

Discussions similaires

  1. Contourner la limite à 65535 lignes avec Excel
    Par jadey dans le forum Jasper
    Réponses: 1
    Dernier message: 06/04/2011, 12h29
  2. Hauteur de lignes dans état
    Par kiki.gaby dans le forum IHM
    Réponses: 19
    Dernier message: 27/06/2007, 10h32
  3. Réponses: 2
    Dernier message: 02/02/2006, 08h23
  4. Hauteur de ligne
    Par The Rock dans le forum AWT/Swing
    Réponses: 1
    Dernier message: 01/02/2006, 10h52
  5. hauteur de ligne dans un DBGrid
    Par mustang-gx dans le forum Bases de données
    Réponses: 9
    Dernier message: 15/03/2004, 20h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo