Vba - combobox
Fermé
Tehani_t
Messages postés
240
Date d'inscription
mercredi 14 juillet 2010
Statut
Membre
Dernière intervention
20 décembre 2011
-
22 févr. 2011 à 21:44
Tehani_t Messages postés 240 Date d'inscription mercredi 14 juillet 2010 Statut Membre Dernière intervention 20 décembre 2011 - 4 mars 2011 à 21:09
Tehani_t Messages postés 240 Date d'inscription mercredi 14 juillet 2010 Statut Membre Dernière intervention 20 décembre 2011 - 4 mars 2011 à 21:09
A voir également:
- Vba - combobox
- Mkdir vba ✓ - Forum VB / VBA
- Vba récupérer valeur cellule ✓ - Forum VB / VBA
- Excel compter cellule couleur sans vba - Guide
- Vba dépassement de capacité ✓ - Forum Excel
- Vba range avec variable ✓ - Forum VB / VBA
3 réponses
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 711
2 mars 2011 à 10:23
2 mars 2011 à 10:23
bonjour
comment faire pour afficher les 5 données ?
Si j'ai compris ta question, en fait, ce qu'il te manque c'est l'initialisation de la propriété ColumnCount. soit tu la défini dans les propriétés (à 1 par défaut) soit tu la met dans ton code
comment faire pour afficher les 5 données ?
Si j'ai compris ta question, en fait, ce qu'il te manque c'est l'initialisation de la propriété ColumnCount. soit tu la défini dans les propriétés (à 1 par défaut) soit tu la met dans ton code
Me.ComboBox1.ColumnCount = 5
Bonjour,
comme mentionné plus haut, il faut définir la propriété "columncount" de la combo à 5 dans l'initialize de ton userform.
Mais je pense que tu dois modifier à la fois la largeur de la combo pour pouvoir
afficher les 5 colonnes mais aussi jouer sur la largeur de ces colonnes par la propriété "columnWidths".
un exemple:
-sur la feuil1 j'ai des données dans les colonnes A jusqu'a E (5 colonnes)
-je remplis ma combo avec ces 5 colonnes
-redéfinies la largeur de chq colonne de la combo
voici le code :
A+
comme mentionné plus haut, il faut définir la propriété "columncount" de la combo à 5 dans l'initialize de ton userform.
Mais je pense que tu dois modifier à la fois la largeur de la combo pour pouvoir
afficher les 5 colonnes mais aussi jouer sur la largeur de ces colonnes par la propriété "columnWidths".
un exemple:
-sur la feuil1 j'ai des données dans les colonnes A jusqu'a E (5 colonnes)
-je remplis ma combo avec ces 5 colonnes
-redéfinies la largeur de chq colonne de la combo
voici le code :
Private Sub UserForm_Initialize() With Sheets(1) tblcombo = .Range("A1:E" & .Range("E" & Rows.Count).End(xlUp).Row) End With With Me.ComboBox1 'Définie le nbr de colonne de la combo ici 5 = col A à E .ColumnCount = 5 'remplir la combo avec le tbl ci-dessus .List = tblcombo 'Définie la largeur de chaque colonne de la combobox .ColumnWidths = "30;30;40;30;30" End With End Sub
A+
ralag
Messages postés
15
Date d'inscription
dimanche 27 février 2011
Statut
Membre
Dernière intervention
2 mars 2011
2
27 févr. 2011 à 18:46
27 févr. 2011 à 18:46
Salut,
la premiére colonne devrait déjà contenir une formule renvoyant toutes les colonnes du style
a1 & "/" & "B1" & "/" & C1le retour serait cette valeur
A essayer.
la premiére colonne devrait déjà contenir une formule renvoyant toutes les colonnes du style
a1 & "/" & "B1" & "/" & C1le retour serait cette valeur
A essayer.
Tehani_t
Messages postés
240
Date d'inscription
mercredi 14 juillet 2010
Statut
Membre
Dernière intervention
20 décembre 2011
21
2 mars 2011 à 00:36
2 mars 2011 à 00:36
Bonjour,
J'ai pas compris .
J'ai pas compris .
ralag
Messages postés
15
Date d'inscription
dimanche 27 février 2011
Statut
Membre
Dernière intervention
2 mars 2011
2
2 mars 2011 à 08:59
2 mars 2011 à 08:59
Salut,
Une combo ne peut renvoyer qu'une seule valeur (celle indiquée par le numéro de la colonne lié)
A moins de faire directement du vba ce n'est pas possible.
En revanche tu peux créer une 6 ième colonne qui contient toute tes valeurs (séparé par un "/" par exemple) et dans ce cas la colonne lié serait la 6 ième
En VBA Excel
Private Sub ComboBox1_Change()
Range("A1").Value = ComboBox1.Column(0)
Range("A2").Value = ComboBox1.Column(1)
Range("A3").Value = ComboBox1.Column(2)
End Sub
C'est mieux ?
Une combo ne peut renvoyer qu'une seule valeur (celle indiquée par le numéro de la colonne lié)
A moins de faire directement du vba ce n'est pas possible.
En revanche tu peux créer une 6 ième colonne qui contient toute tes valeurs (séparé par un "/" par exemple) et dans ce cas la colonne lié serait la 6 ième
En VBA Excel
Private Sub ComboBox1_Change()
Range("A1").Value = ComboBox1.Column(0)
Range("A2").Value = ComboBox1.Column(1)
Range("A3").Value = ComboBox1.Column(2)
End Sub
C'est mieux ?
Tehani_t
Messages postés
240
Date d'inscription
mercredi 14 juillet 2010
Statut
Membre
Dernière intervention
20 décembre 2011
21
4 mars 2011 à 21:09
4 mars 2011 à 21:09
Bonjour à tous,
Merci d'avoir répondu mais je n'ai pas encore pu tester car je ne parviens pas à lancer (=afficher) le userform qui contient mon combobox !!!
Merci d'avoir répondu mais je n'ai pas encore pu tester car je ne parviens pas à lancer (=afficher) le userform qui contient mon combobox !!!