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

VB 6 et antérieur Discussion :

Affichage ComboBox multi-colonnes


Sujet :

VB 6 et antérieur

  1. #1
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 9
    Points : 7
    Points
    7
    Par défaut [Résolu] Affichage ComboBox multi-colonnes
    Bonjour !

    Voilà j'ai créé une ComboBox avec les "Microsoft Forms 2.0 Object Library (FM20.DLL)" dans lequel j'ai une liste à 3 colonnes.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ComboBox1.ColumnWidths = 0 pt;50 pt;50 pt
    Ici je masque la première colonne que je ne désire pas à l'affichage

    Pour afficher dans ma ComboBox j'utilise la boucle suivante:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        For i = 1 To 9
            Call ComboBox1.AddItem(i, Index)
                ComboBox1.List(Index, 1) = "R" & i & "C2"
                ComboBox1.List(Index, 2) = "R" & i & "C3"
        Next i
    J'obtient donc le Form qui se trouve à gauche de l'image suivante:



    et j'aimerai obtenir un affichage comme jobtient (par retouche de l'image) sur le Form de droite.

    Le but est d'afficher deux des colonnes dans la valeur du ComboBox au lieu d'une seule des colonnes.

    Merci à ceux qui pourraient m'éclairer sur ce sujet ![/quote]

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    290
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 290
    Points : 374
    Points
    374
    Par défaut
    Bonjour,
    Je voudrais bien t'aider, mais ton code n'affiche que des erreurs ?
    Comment parviens-tu à remplir to combo avec ce code là ???

    jpleroisse

  3. #3
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 9
    Points : 7
    Points
    7
    Par défaut
    Salut et merci pour ton intérêt dans mon problème.

    Hé bien en gros j'ai l'interface suivante:



    Et ma ComboBox (Microsoft Forms 2.0 Object Library) a les attributs suivants:



    J'ai aussi le ocde suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Private Sub Command1_Click()
        If ComboBox1.ListIndex > -1 Then
            MsgBox (ComboBox1.Column(0) & vbCrLf & ComboBox1.Text)
        End If
    End Sub
    Private Sub Form_Load()
        Dim Index As Long
        Index = ComboBox1.ListCount
        For i = 1 To 9
            Call ComboBox1.AddItem(i, Index)
                ComboBox1.List(Index, 1) = "R" & i & "C2"
                ComboBox1.List(Index, 2) = "R" & i & "C3"
        Next i
    End Sub
    Tout cela me permet d'avoir une ComboBox avec 3 colonnes (dont une masquée (cf ColumnWidths))

  4. #4
    Expert éminent sénior


    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
    Points : 20 038
    Points
    20 038
    Par défaut
    Je pense pas que cela soit possible, voir la propriété : TextColumn
    qui est à -1 par défaut

    Citation Envoyé par Aide en ligne
    Valeurs

    Les valeurs de la propriété TextColumn sont comprises entre –1 et le nombre de colonnes de la liste. La valeur de la propriété TextColumn pour la première colonne est 1, la valeur de la deuxième colonne est 2, et ainsi de suite. La définition de la propriété TextColumn sur 0 affiche les valeurs de la propriété ListIndex. La définition de la propriété TextColumn sur –1 affiche la première colonne ayant une valeur de la propriété ColumnWidths supérieure à 0.
    .. à la limite tu peu créer une colonne cachée.. conteant le texte à afficher..

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Private Sub Form_Load() 
        Dim Index As Long
        Index = ComboBox1.ListCount
        ComboBox1.ColumnCount = 4
        ComboBox1.ColumnWidths = "0 pt;49,95 pt;49,95 pt;0"
        ComboBox1.TextColumn = 4
        For i = 1 To 9
            Call ComboBox1.AddItem(i, Index)
                ComboBox1.List(Index, 1) = "R" & i & "C2"
                ComboBox1.List(Index, 2) = "R" & i & "C3"
                ComboBox1.List(Index, 3) = ComboBox1.List(Index, 1) & vbTab & ComboBox1.List(Index, 2)
        Next i
    End Sub

  5. #5
    Futur Membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2005
    Messages
    9
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2005
    Messages : 9
    Points : 7
    Points
    7
    Par défaut
    Salut !

    Tu viens de m'ouvrir les yeux

    En fait mes 3 colonnes sont NumPersonne, NomPersonne et PrénomPersonne.

    Et le Nom et le Prénom dans mon Combo... ben c'est que de la donnée à afficher ! La donnée utile et indispensable est bien le champ Num !!

    Donc je me cassais la tête pour rien

    Je vais donc faire comme tu me l'a indqué: ma première colonne masquée contenant les Num puis la 2ème avec la concaténation de mes deux champs Nom et Prénom !

    Merci beaucoup 8)

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

Discussions similaires

  1. Renseigner des ListBox/ComboBox multi-colonnes - Récupérer la sélection
    Par ouskel'n'or dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 07/09/2007, 13h42
  2. affichage combobox multi données
    Par jeanjean0403 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 25/08/2006, 15h47
  3. [VB.NET]ComboBox Multi-Colonnes
    Par Golzinne dans le forum Windows Forms
    Réponses: 3
    Dernier message: 02/03/2006, 18h55

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