W
whalise
Guest
Bonjour à tous,
après pas mal de recherches sur internet et notamment sur ce forum, j'ai presque réussi à faire ce que je voulais... mais presque seulement et là, je bloque.
Je vous explique :
j'ai fait 2 combobox, la première est une liste déroulante fixe
la liste de la 2ème dépend du choix de la première (les éléments de la liste se trouvent sur une feuilel appelée "BUs")
Pour cela j'ai utilisél e code suivant :
------------------------------
Sub ComboBox1_change()
Dim lig As Long
ComboBox2.Clear
lig = 2
While Sheets("BUs").Range("C" & lig).Value <> ""
If Sheets("BUs").Range("B" & lig).Value = ComboBox1.Text Then
ComboBox2.AddItem Sheets("BUs").Range("C" & lig).Value
End If
lig = lig + 1
Wend
End Sub
-----------------------------
tout fonctionne comme je le souhaitais, sauf que voilà : lorsque je ferme le fichier et que je l'ouvre à nouveau, la 2ème liste a disparu. Et je ne veux pas forcer les utilisateurs à refaire leur choix à chaque utilisation.
J'ai donc essayé d'utiliser combobox2_dropbuttonclick() à la place de combobox1_change(), mais là... le problème est différent : la liste apparaît bien, mais la sélection ne reste pas affichée... et ça nem 'arrange pas non plus.
Donc j'ai pensé mettre ça plutôt dans workbook_open(), mais ça ne marche pas non plu (ou alors je le fais mal).
Donc si vous avez une idée pour m'aider, ça serait super, parce que je ne sais plus comment faire 🙂
Merci d'avance,
Whalise
après pas mal de recherches sur internet et notamment sur ce forum, j'ai presque réussi à faire ce que je voulais... mais presque seulement et là, je bloque.
Je vous explique :
j'ai fait 2 combobox, la première est une liste déroulante fixe
la liste de la 2ème dépend du choix de la première (les éléments de la liste se trouvent sur une feuilel appelée "BUs")
Pour cela j'ai utilisél e code suivant :
------------------------------
Sub ComboBox1_change()
Dim lig As Long
ComboBox2.Clear
lig = 2
While Sheets("BUs").Range("C" & lig).Value <> ""
If Sheets("BUs").Range("B" & lig).Value = ComboBox1.Text Then
ComboBox2.AddItem Sheets("BUs").Range("C" & lig).Value
End If
lig = lig + 1
Wend
End Sub
-----------------------------
tout fonctionne comme je le souhaitais, sauf que voilà : lorsque je ferme le fichier et que je l'ouvre à nouveau, la 2ème liste a disparu. Et je ne veux pas forcer les utilisateurs à refaire leur choix à chaque utilisation.
J'ai donc essayé d'utiliser combobox2_dropbuttonclick() à la place de combobox1_change(), mais là... le problème est différent : la liste apparaît bien, mais la sélection ne reste pas affichée... et ça nem 'arrange pas non plus.
Donc j'ai pensé mettre ça plutôt dans workbook_open(), mais ça ne marche pas non plu (ou alors je le fais mal).
Donc si vous avez une idée pour m'aider, ça serait super, parce que je ne sais plus comment faire 🙂
Merci d'avance,
Whalise