conditionner combobox

P

PY

Guest
bonjour a tous

je voudrais conditionner un combobox2 à un combobox 1 c'est à dire:
si combobox1 = quelquechose alors combobox2 = autrechose

j'ai fait un petit exemple avec des marques de voitures qui quand je les sélectionne me donnerai les modèle pour cette marque. j'ai 3 marque de voitures (françaises bien sur !) mais serait il possible de faire un conditionnement avec plus de 20 item dans le combobox1 ?

merci
 

Pièces jointes

  • exemple.xls
    30.5 KB · Affichages: 70
  • exemple.xls
    30.5 KB · Affichages: 68
  • exemple.xls
    30.5 KB · Affichages: 71
J

jb

Guest
Salut PY,

regarde le fichier que je t'ai mis en pièce jointe. c le tien mais un peu modifié. voila ce que je te propose:

une fois que tu as fait ta selection ds la combobox1 compare à l'aide d'une petite macro la valeur de cette combobox1 aux entêtes des colonnes (marques des voitures que j'ai rajouté) et quand tu as trouvé la bonne colonne, affecte la liste des voitures à at combobox2.

voila, j'espère que ça va marcher.

A+ JB
 

Pièces jointes

  • proposition.xls
    27.5 KB · Affichages: 85
  • proposition.xls
    27.5 KB · Affichages: 88
  • proposition.xls
    27.5 KB · Affichages: 91
P

PY

Guest
salut Jb

l'exemple que j'ai donné est sur une feuille en fait pour alimenter mon combobox1 et 2 j'appelle un autre fichier excel (pour ce que je veut faire)

quelle est la macro pour comparer, j'aurais peut etre plus d'une vingtaine de tete de colone pour comparer, y a t il possibilté de faire une macro ?
 
J

jb

Guest
essai ça (ou quelque chose du style), je pense que si tu changes les noms des variables et que tu mets aussi les bons n° de ligne et de colonne, ça devrait coller à peu près.


Private Sub combobox1_Change()
colonne_produit = 3
Sheets("Produits et Tests").Activate
While Not IsEmpty(Cells(9, colonne_produit))
If Cells(9, colonne_produit) = cbSelectionProduit.Value Then
Dim dercell, lettre_colonne As String
lettre_colonne = Chr(colonne_produit + 64)
dercell = Range(lettre_colonne & "9").End(xlDown).Address
cbSelectionTest.RowSource = lettre_colonne & "10:" & dercell
End If
colonne_produit = colonne_produit + 1
Wend
End Sub
 

Discussions similaires

Réponses
10
Affichages
411

Statistiques des forums

Discussions
312 446
Messages
2 088 491
Membres
103 870
dernier inscrit
didiexcel