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 :

inscriptions des entêtes de listbox [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut inscriptions des entêtes de listbox
    bonjour a vous tous

    comment puisse faire pour qu'une listbox prennent en entêtes les entêtes de "A1:K1 des feuilles qui sont ouvertes a l'aide d'une combobox, en sachant que toutes les feuilles sont identiques.
    cordialement

    Pascal

  2. #2
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 128
    Par défaut
    Salut

    Dans les propriété de ta listbox, tu mets columnheaders à true

    Ensuite tu renseignes sa propriété SourceRow avec A2:K8 (bien sur il faudra adapter)

    ++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  3. #3
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonjour Qwazerty
    merci de ta réponse qui me semble bien mais j'ai une erreur non répertorié a l'appui sur le bouton qui ouvre l'usf et la ligne de bug est
    "userform1.show"
    je joint un fichier exemple

    cordialement

    Pascal

  4. #4
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 128
    Par défaut
    SAlut
    Je suis en retard, mais ton erreur vient d'ici


    ++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  5. #5
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonsoir Qwazerty

    j'avais essayer justement avec =" " mais sans succès mais j'ai supprimé cette ligne et c'est parfait, mais la combobox qui se trouve dessous bug quand je veux ouvrir une feuile dans la listbox
    erreur 70 permission refusée
    et débogage a la ligne du merci pour ce qui est de ta solution

    cordialement

    Pascal

  6. #6
    Expert éminent


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Par défaut
    et il y as quoi dans cette sub ?








    -----------------------------------------------------------------------
    Je n'ouvre pas les pièces jointes.

  7. #7
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonjour bbil
    voici le contenu de la sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UserForm1.ListBox1.List = ActiveSheet.Range("A2:L240").Value
    cordialement

    Pascal

  8. #8
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 128
    Par défaut
    Salut
    Essai plutôt quelque chose comme
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UserForm1.ListBox1.RowSource = ActiveSheet.Name & "!" & Range("A2:L240").Address
    Dans ce cas, si tu modifies le contenu des cellules le contenu de ta liste sera modifié. Si tu ne souhaites pas une telle liaison, il faudra boucler sur chaque cellule contenant les valeurs et les insérer une à une dans la listBox à l'aide de la méthode AddItem.
    ++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  9. #9
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonsoir Qwazerty

    j'ai essayer le code modifié mais aucun changement, mais quand la page bug arrive en cliquant sur F8 cela m'envoie sur le code sur l'initialisation de l'usf
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub UserForm_Initialize()
    Me.ListBox1.Clear
    Dim Sh As Worksheet
    For Each Sh In ThisWorkbook.Worksheets
    Me.ComboBox1.AddItem Sh.Name
    Next
    ListBox1.ColumnCount = 9
    ListBox1.ColumnWidths = "20;1;230;1;1;40;40;1;20"
     ListBox1.ColumnHeads = True
    ListBox1.RowSource = Range("A1:f" & Cells(Rows.Count, "a").End(xlUp).Row).Address
    End Sub
    voila maintenant vous avez toutes les données et même le fichier

    cordialement

    Pascal

  10. #10
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 128
    Par défaut
    Salut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    Private Sub UserForm_Initialize()
    Dim Sh As Worksheet
     
    'Ce qui suit est utile uniquement si tu ne souhaites pas faire une laison avec des cellules
    'Me.ListBox1.Clear
    'For Each Sh In ThisWorkbook.Worksheets
    'Me.ComboBox1.AddItem Sh.Name
    'Next
     
    ListBox1.ColumnCount = 9
    ListBox1.ColumnWidths = "20;1;230;1;1;40;40;1;20"
    'Ici on fait la liaison avec les cellules qui nous interesse
    'On commence le tableau à la ligne 2, la ligne 1 sera automatiquement prise en compte pour les entêtes
    ListBox1.RowSource = Range("A2:F" & Cells(Rows.Count, "A").End(xlUp).Row).Address
     
    End Sub
    Attention au code présent dans UserForm_Activate

    Dans cette configuration soit bien conscient que les modification faite sur la listebox sont répercutées dans ta feuille excel et vice versa

    ++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  11. #11
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonsoir Qwazerty

    merci de ta réponse mais maintenant dans l'initialisation il y a un activex qui manque, je remets le fichier modifié et tu vas constater si j'opère mal la transcription ou s'il y a autre chose ce n'est qu'une ébauche pour autre chose
    Merci pour tout

    Pascal

  12. #12
    Expert confirmé
    Avatar de Qwazerty
    Homme Profil pro
    La très haute tension :D
    Inscrit en
    Avril 2002
    Messages
    4 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Activité : La très haute tension :D
    Secteur : Service public

    Informations forums :
    Inscription : Avril 2002
    Messages : 4 128
    Par défaut
    Salut

    Que souhaites tu faire avec ce code exactement?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub UserForm_Activate()
    Dim tableau As Variant
        ListBox1.ColumnCount = 6
        ListBox1.ColumnHeads = True
        tableau = Sheets("feuil1").Range("a2:j" & Sheets("feuil1").Range("a65530").End(xlUp).Row)
        ListBox1.List = tableau
      UserForm1.Caption = "Sélection d'un article"
     
     
    End Sub
    Je ne comprend pas, tu initialises ta listBox, lors de la création de ton UserForm (Initialize), en lui plaçant 9 colonnes et en liant sont contenu aux valeurs contenu dans une des feuille de ton classeur.

    Et lorsque tu actives la UserForm (a chaque fois qu'elle prend le focus), tu redimensionnes de nouveau ta listBox pour qu'elle ne contienne que 6 colonnes... pourquoi l'initialiser à 9 colonnes?

    Essai en enlevant tout le code contenu dans UserForm_Activate et dit nous

    ++
    Qwaz

    MagicQwaz := Harry Potter la baguette en moins
    Le monde dans lequel on vit
    Ma page perso DVP
    Dernier et Seul Tutoriel : VBA & Internet Explorer
    Dernière contribution : Lien Tableau Structuré et UserForm
    L'utilisation de l’éditeur de message

  13. #13
    Membre éclairé Avatar de grisan29
    Homme Profil pro
    ouvrier poseur
    Inscrit en
    Octobre 2006
    Messages
    866
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ouvrier poseur
    Secteur : Bâtiment

    Informations forums :
    Inscription : Octobre 2006
    Messages : 866
    Par défaut
    bonsoir Qwazerty
    merci de ta réponse, en fait le code de l'activation de l'usf a été placé avant la venue de ton code en initializant et oubli de l'enlever comme tu vient de le dire
    désolé pour tous les désagrément que j'ai causé a vos réponses qui était parfaite si je n'avais pas mélangé activate et initialize

    maintenant qu'activate a disparu plus de problème
    un très grand Merci

    cordialement

    Pascal

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

Discussions similaires

  1. Changer le nom des entêtes d'une listbox
    Par weaponsb dans le forum VBA Access
    Réponses: 9
    Dernier message: 07/06/2019, 16h05
  2. [MySQL] Liste deroulante et inscription des valeurs dans une table
    Par stefon dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 24/11/2006, 15h31
  3. Réponses: 2
    Dernier message: 19/04/2006, 13h43
  4. [JTable] Personnaliser l'apparence des entêtes de colonne
    Par seiryujay dans le forum Composants
    Réponses: 3
    Dernier message: 03/10/2005, 17h09
  5. DBGrid - changer le noms des entête de colonnes ?
    Par safab dans le forum Bases de données
    Réponses: 2
    Dernier message: 12/11/2004, 16h49

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