Remplir combobox2 avec combobox1

Bonjour, voici mon problème:

J'ai une Combobox1(Catégorie) dans laquelle sont listée toutes mes catégories, sur la feuille "Dépenses" de "A1" jusqu'à dernière colonne non vide

J'ai une combobox2(Sous-catégorie).

Ce que j'essaie de faire , c'est que si la valeur de ma Combobox1 = ex: "Assurance" , il recherche sur la ligne 1 de ma feuille "Dépenses" la valeur de la Combobox1 et qu'il me renvoi dans la combobox2 la liste de la ligne 2 jusqu'à la dernière ligne non vide.

Merci.

depenses

Bonjour Benoist, bonjour le forum,

Essaie comme ça :

Private O As Worksheet 'déclare la variable O (Onglet)

Private Sub UserForm_Initialize() 'à l'initialisation de l'UserForm
Set O = Worksheets("Dépenses") 'définit l'onglet O
'alimente la ComboBox1
Me.ComboBox1.List = Application.Transpose(O.Range("A1:" & O.Cells(1, Application.Columns.Count).End(xlToLeft).Address(0, 0)))
End Sub

Private Sub ComboBox1_Change() 'au changement dans la ComboBox1
Dim COL As Byte 'déclare la variale COL (COLonne)

Me.ComboBox2.Clear 'vide la ComboBox2
COL = Me.ComboBox1.ListIndex + 1 'définit la colonne COL
'alimente la ComboBox2
Me.ComboBox2.List = O.Range(O.Cells(2, COL), O.Cells(Application.Rows.Count, COL).End(xlUp)).Value
End Sub

J'avais envie de faire une capture d'écran du code pour t'obliger à le retaper mais, contrairement à toi, j'ai préféré te faciliter la tâche...

Re,

Merci ThauThème. La photo n'était pas là pour me faciliter le travail mais pour la compréhension de ma demande par des personne qui comme toi me propose leur aide. Et je t'en remercie encore une fois.

Je ne cherche pas à me faciliter la tache mais à apprendre et à comprendre, pour preuve le fait que je n'ai pas mis tout les arguments dans ma demande (2 optionButton pour 2 feuilles différentes).

J'ai encore un petit souci, quand je change de "optionButton" j'ai cette erreur qui s'affiche (fichier joint), auriez vous une idée ? Merci


J'ai trouvé, il suffisait de lui dire d'agir que si la Combobox1 n'était pas vide.

If ComboBox1 <> "" Then
Me.ComboBox2.List = O.Range(O.Cells(2, COL), O.Cells(Application.Rows.Count, COL).End(xlUp)).Value
End If

Encore un grand merci à toi ThauThème.

erreur

Re,

Tu navet (si, si, dans ce cas on peut...) pas perçu l'ironie qui illustrait mon propos. Alors j'explique. Si tu veux de l'aide rapidement, ce n'est pas une photo qu'il nous faut mais le fichier. Au pire, le code mais dans un mode où l'on peut l'éditer.

Je reprends encore une fois le vieux cliché que j'utilise toujours dans ce cas. Si tu crèves un pneu, est-ce que tu amènes une photo de la roue crevée à ton garagiste ? Non ! Alors pourquoi tu le fais ici ?

Ok, pas de soucis, désolé pour l’incompréhension, je ferais mieux la prochaine fois.

Rechercher des sujets similaires à "remplir combobox2 combobox1"