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

Macros et VBA Excel Discussion :

Equivalent ListBox wordwrap [Toutes versions]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif
    Homme Profil pro
    Analyste programmeur
    Inscrit en
    Mai 2014
    Messages
    393
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Analyste programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 393
    Par défaut Equivalent ListBox wordwrap
    Bonjour à tous,

    Voilà, je suis confronté à un problème. J'ai actuellement un classeur avec une centaine de lignes. Ces lignes doivent être affichées dans une ListBox (ou son équivalent, d'où le sujet).
    Cependant, la plupart des lignes dépassent largement la largeur de la ListBox , et le wordwrapping n'étant pas disponible pour les ListBox , je me demandais s'il n'y a pas moyen d'avoir un rendu équivalent, car les lignes doivent être totalement lisibles, et on doit pouvoir cliquer dessus (donc diviser une ligne en plusieurs n'est pas possible).

    Voilà, si quelqu'un à une idée pour implémenter un équivalent de listBox avec wordwrap, je suis preneur (je ne demande pas forcément du code, mais juste un ligne directrice).

    Merci d'avance!

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour

    C'est à toi qu'il appartient de définir les largeurs de colonnes de ta listbox, tout simplement.

  3. #3
    Membre très actif
    Homme Profil pro
    Analyste programmeur
    Inscrit en
    Mai 2014
    Messages
    393
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Analyste programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 393
    Par défaut
    Le fait est que certaines lignes font 2 à 3 fois la taille de l'écran (qui est un 15 pouces). On peut même parler de paragraphes si tu préfères. Et bien sûr il est possible d'utiliser une scrollbar horizontale, mais ma demande consiste justement à en éviter l'utilisation, en utilisant un équivalent de wordwrapping.

    Je reformule donc ma demande :

    J'ai besoin de créer l'équivalent d'un listBox avec wordwrapping pour empêcher l'utilisation du défilement horizontal.

    Merci d'avance pour vos réponses.

  4. #4
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Le contrôle Listbox n'est pas construit pour permettre ce que tu veux faire. Il ne peut même pas traduire par un saut de ligne l'ajout de la constante VBCrlf.
    La seule solution serait donc construire de A à Z ton propre Ocx. Démesuré !

    Mais j'y pense : une MSFlexgrid est plus souple et te permet de faire cela.
    A utiliser, donc, à la place de ta listbox.

  5. #5
    Membre très actif
    Homme Profil pro
    Analyste programmeur
    Inscrit en
    Mai 2014
    Messages
    393
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Analyste programmeur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 393
    Par défaut
    Citation Envoyé par unparia Voir le message
    Mais j'y pense : une MSFlexgrid est plus souple et te permet de faire cela.
    A utiliser, donc, à la place de ta listbox.
    Ca me semble une bonne idée, mais en cherchant, je n'ai pas pu trouver d'explication concernant son utilisation dans un usf, à part en utilisant le VB6 (auquel je n'ai pas accès)

  6. #6
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Euh ...
    A toi de te montrer un peu "débrouillard", si tu la veux, cette grille .
    Je ne sais pas trop si c'est ou non totalement "légal", mais tu l'auras, si tu fais ceci :
    1) télécharger cet ocx (on le trouve un peu partout sur la toile)
    2) l'enregistrer (utilisation de regsvr32)
    3) si tu lo'insères sur un userform, tu auras un vilain petit message disant qu'il n'est pas utilisable
    4) il ne l'est pas car un drapeau a été mis dans la base de registre, à la clé :
    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\ActiveX Compatibility\{6262D3A0-531B-11CF-91F6-C2863C385E30}]
    "Compatibility Flags"=dword:00000400
    Mets-y 0 à la place de 400 et ... constate ensuite ...
    Je n'en dirai pas plus à ce sujet. A toi (et toi seul) d'y jouer, si tu la veux, cette grille.

  7. #7
    Membre Expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Par défaut
    Oui enfin si ton fichier Excel est à destination d'utilisateurs finaux, il te faudra faire la manip sur chaque PC !
    Autrement dit c'est relativement galère à déployer ensuite....
    On se passe déjà du contrôle Calendar MS parce qu'il pose soucis.
    Alors sur un OCX à inscrire + modif registre....

    Enfin à toi de voir !

  8. #8
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 84
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Par défaut
    Bonjour cerede2000
    Tout-à-fait.
    Et c'est l'une des raisons de la "formulation" de mon message précédent.

  9. #9
    Membre Expert
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Juillet 2004
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 725
    Par défaut
    Tu peux plutôt imaginer de créé une pseudo gridview avec l'ajout de contrôle dynamique dans ton USF.
    J'ai déjà réalisé quelque chose de similaire avec pour chaque ligne, des textbox, des label et des combobox et en conteneur une frame.

    Par contre ça demande beaucoup de dextérité avec VBA !

  10. #10
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Cela confirme l'évidence. Excel n'est pas fait, n'a jamais été fait et ne sera jamais fait pour gérer des données.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. equivalent listbox selecteditems en aspx
    Par olibara dans le forum ASP.NET
    Réponses: 2
    Dernier message: 05/01/2010, 17h01
  2. DrawItem d'un listbox...
    Par scorpiwolf dans le forum C++Builder
    Réponses: 5
    Dernier message: 22/06/2007, 15h50
  3. Equivalent listbox et treeview en Java
    Par AsmCode dans le forum AWT/Swing
    Réponses: 7
    Dernier message: 05/03/2007, 22h17
  4. [Kylix] Equivalent ShellExec en CLX
    Par Anonymous dans le forum EDI
    Réponses: 7
    Dernier message: 14/08/2002, 11h55
  5. [Kylix] equivalent winsock avec kylix
    Par Victor dans le forum EDI
    Réponses: 2
    Dernier message: 08/05/2002, 07h43

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