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

VBA Access Discussion :

Remplir dynamiquement une combobox de plusieurs colonnes [AC-2003]


Sujet :

VBA Access

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Décembre 2009
    Messages
    206
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2009
    Messages : 206
    Points : 243
    Points
    243
    Par défaut Remplir dynamiquement une combobox de plusieurs colonnes
    Bonjour à tous,

    Je souhaite remplir une combobox de plusieurs colonnes dynamiquement.

    Pour l'instant, j'arrive à remplir la combobox si elle n'a qu'une seule colonne.


    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
    17
    Dim RcdSet As DAO.Recordset
    Dim SQL As String
    Dim oMateriel As String
     
    SQL = "Select RefMat As Ref, IdentifiantMat As Identifiant " & _
             " FROM Materiel;"
     
    Set RcdSet = CurrentDb.OpenRecordset(SQL, dbOpenForwardOnly, dbReadOnly)
     
    Me.cboMat.RowSource = ""
    Me.cboMat.RowSourceType = "Value List"
     
    Do Until RcdSet.EOF
        oMateriel = RcdSet![Identifiant] 
        Me.cboMat.AddItem (oMateriel)
        RcdSet.MoveNext
    Loop
    Je souhaiterais également ajouter une colonne pour voir apparaître la référence du matériel, mais je ne trouve pas comment y parvenir.

    Quelqu'un pourrait-il m'éclairer à ce sujet?

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    352
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Avril 2006
    Messages : 352
    Points : 415
    Points
    415
    Par défaut
    pourquoi ne pas faire tout simplement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    SQL = "Select RefMat As Ref, IdentifiantMat As Identifiant " & _
             " FROM Materiel;"
     
    Me.cboMat.RowSource = sql
    Me.cboMat.RowSourceType = "Table/Query"
    me.cboMat.columnCount = 2
    me.cboMat.columnwidths = "3cm;3cm"

  3. #3
    Candidat au Club
    Inscrit en
    Décembre 2009
    Messages
    3
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Décembre 2009
    Messages : 3
    Points : 4
    Points
    4
    Par défaut
    Il faut séparer les 2 valeurs des 2 colonnes par un ";", tu auras alors :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Do Until RcdSet.EOF
        Me.cboMat.RowSource = RcdSet![Identifiant] & ";" & RcdSet![Ref] & ";"
        RcdSet.MoveNext
    Loop

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

Discussions similaires

  1. Aide pour remplir dynamiquement une ComboBox
    Par samahmoise dans le forum Excel
    Réponses: 1
    Dernier message: 29/11/2013, 20h50
  2. Comment remplir une listview de plusieurs colonnes?
    Par Chacha35 dans le forum Windows Forms
    Réponses: 6
    Dernier message: 10/09/2009, 13h19
  3. Remplir une ComboBox avec DEUX colonnes (ou plus ^_^)
    Par DashRendar dans le forum VB.NET
    Réponses: 3
    Dernier message: 07/02/2008, 09h54
  4. [MFC] Classer une liste a plusieur colonne
    Par Kevgeii dans le forum MFC
    Réponses: 8
    Dernier message: 07/03/2005, 16h09
  5. [VB6] [Interface] ComboBox à plusieurs colonnes
    Par mtl dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 30/03/2004, 18h35

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