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 :

Synchroniser les ascenseurs horizontaux de deux Listbox de largeurs identiques


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Août 2016
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Août 2016
    Messages : 38
    Points : 32
    Points
    32
    Par défaut Synchroniser les ascenseurs horizontaux de deux Listbox de largeurs identiques
    Bonjour a tous,

    Je suis plutôt novice en VBA et j'essaie de créer une petite base de données gérée a l'aide d'userform VBA. Je rencontre un premier problème d'ordre esthétique :
    Je voudrais afficher dans un userform un tableau (crée au préalable sur un onglet excel). J'ai trouve sur internet que le plus simple pour faire afficher un tableau dans un userform est d'utiliser le contrôle ListBox.

    Mon tableau est constitue de plusieurs colonnes, la première ligne de celui-ci désigne les titres des colonnes et les autres lignes constituent les données. Mon tableau contient de nombreuses colonnes ce qui fait qu'un ascenseur horizontal se crée automatiquement. Vu que ListBox ne permet pas de changer la couleur et la police d’écriture d'uniquement une ligne, j'ai donc créé deux listBox de largeurs identiques, l'une qui accueille les titre en gras surligne bleu, l'autre qui accueille les données.

    Ma question est la suivante : peut-on synchroniser les ascenseurs horizontaux de ces deux listbox afin dans mon cas que le titre de la colonne soit toujours au dessus de la colonne concernée? (J'ainotamment le probleme pour l'userform "Machine_final_dies" de mon fichier)

    Merci d'avance
    Fichiers attachés Fichiers attachés

  2. #2
    Membre éprouvé
    Avatar de eric4459
    Homme Profil pro
    Ingénieur Gestion de Projets
    Inscrit en
    Avril 2014
    Messages
    605
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes de Haute Provence (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur Gestion de Projets
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2014
    Messages : 605
    Points : 1 124
    Points
    1 124
    Par défaut
    Bonjour Artistepeintredu44,
    Voici un tutoriel qui te permettra, je l’espère, de trouver ton bonheur, il est issu de la bible de SilkyRoad
    http://silkyroad.developpez.com/VBA/ControlesUserForm/
    Je crois que dans ton cas tu devrais essayer les ListView plutôt que les ListBox
    http://silkyroad.developpez.com/VBA/ListView/
    Au fait je n'ai pas pu télécharger ton fichier -> redirection vers une page blanche (Essayes la méthode télécharger "Fichiers Basique")
    Sinon perso, Nantes? St Naz?
    Eric
    "Vous n’avez cessé d’essayer ? Vous n’avez cessé d’échouer ? Aucune importance !
    Réessayez, échouez encore, échouez mieux." Samuel Beckett
    Pensez aux balises et
    Visitez les FAQ Excel et allez faire un tour ici
    Tutoriels de SilkyRoad

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Août 2016
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Août 2016
    Messages : 38
    Points : 32
    Points
    32
    Par défaut
    Bonjour eric4459,

    Merci pour ta réponse, je vais du coup essayer d'utiliser le contrôle ListView vu que ce que je veux faire ne semble pas possible avec le contrôle ListBox!
    Sinon je suis de Nantes, mais en ce moment je suis en mission pour 4 mois à Ho chi Minh au Vietnam, et toi?

  4. #4
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 274
    Points
    11 274
    Par défaut
    Salut, zippe ton fichier xlsm car non téléchargeable ( pb récurrent sur ce forum et jamais résolu à ce jour )

  5. #5
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Août 2016
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Août 2016
    Messages : 38
    Points : 32
    Points
    32
    Par défaut
    Bonjour,
    Je viens de renvoyer mon fichier sous format ZIP
    Fichiers attachés Fichiers attachés

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Août 2016
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Août 2016
    Messages : 38
    Points : 32
    Points
    32
    Par défaut
    Je suis en fait à la recherche de l'évènement déclenché par la mise en mouvement de la scrollbar horizontale automatique de la Listbox ainsi que la méthode permettant de régler la scrollbar. Tout cela dans l'objectif que quand l'une des scrollbar est utilisée, on récupère sa position et qu'on attribue automatiquement à la deuxième scrollbar afin que les deux puissent bouger de façon synchrones.

    J'ai trouvé la liste des évènements, des méthodes et des propriétés associées aux Listbox ( https://msdn.microsoft.com/fr-fr/lib...s.listbox.aspx ), je pense que mon bonheur se trouve là dedans mais je ne comprends vraiment pas toutes les explications de ces commandes...

  7. #7
    Membre extrêmement actif
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 82
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Points : 12 422
    Points
    12 422
    Par défaut
    Bonjour
    Je suis en fait à la recherche de l'évènement déclenché par la mise en mouvement de la scrollbar horizontale automatique de la Listbox
    Il n'existe pas pour les listboxes de VBA
    Pour ce qui est du reste : une listbox VBA ne possède aucune propriété concernant la valeur du Scroll, que tu ne peux donc ni relever, ni déterminer.

    EDIT tu peux par contre toujours (si tu y tiens car lourd + boulot):
    - mettre tes deux listboxes DANS un Frame
    - donner à tes deux listboxes leur largeur maximale (pour ne pas avoir d'ascenseur)
    et :
    - soit ajouter sous ton Frame une scrollbar horizontal dont tu te sers de la valeur pour déplacer tes listboxes
    - soit doter ton frame d'un ascenseur (sa propriété scrollbars), ce qui déplacera automatiquement tous les contrôles contenus dans ce Frame.
    Je n'accepte pas de demande d' "amitié" individuelle. Tout développeur est pour moi un ami.
    Je n'ouvre AUCUN classeur tiers (avec ou sans macro ******). Ne m'en proposez donc pas .

    ****** : Non, non ... un classeur .xlsx ne "peut" par exemple et entre autres pas contenir un activex (de surcroît invisible) , "bien sûr" ...

    Il est illusoire de penser que l'on saurait exprimer valablement et précisément en un langage (rigide) de développement ce que l'on peine à exprimer dans le langage naturel, bien plus souple.

  8. #8
    Nouveau membre du Club
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Août 2016
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Août 2016
    Messages : 38
    Points : 32
    Points
    32
    Par défaut
    D'accord,
    Merci beaucoup pour les éléments de réponse, je vais essayer de faire ça avec un Frame.

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

Discussions similaires

  1. [V8] Synchroniser les contacts de deux bases Odoo
    Par nikkola dans le forum Odoo (ex-OpenERP)
    Réponses: 1
    Dernier message: 09/09/2015, 15h00
  2. [AC-2010] Synchroniser les ascenseurs verticaux de 2 sous-formulaires
    Par crossrobotik dans le forum IHM
    Réponses: 1
    Dernier message: 12/05/2014, 18h50
  3. Synchroniser deux listBox
    Par Marley_T dans le forum Débuter
    Réponses: 9
    Dernier message: 25/02/2011, 10h45
  4. Synchroniser les ascenseurs de deux panels.
    Par Rycku dans le forum Windows Forms
    Réponses: 2
    Dernier message: 09/02/2007, 12h20
  5. [C#] comment lier les ascenseurs de deux datagrids ??
    Par mbibim63 dans le forum Windows Forms
    Réponses: 18
    Dernier message: 06/06/2005, 15h14

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