Liste encascade

Signaler
Messages postés
2
Date d'inscription
lundi 3 août 2009
Statut
Membre
Dernière intervention
3 mai 2012
-
Messages postés
1402
Date d'inscription
mardi 1 mai 2007
Statut
Membre
Dernière intervention
7 octobre 2012
-
Bonjour,

En VBA Excel, dans un formulaire j'ai deux comobox , la première que je remplis par des données dans une colonne d'un fichier excel et le second comobox qui se remplit par des données d'une autre colonne du même fichier, en fonction du choix fait dans le premier comobox. Jusque là tout est normal, mais mon problème c'est que dans le premier como j'ai des chiffres (ex: 7314) et des chiffres avec des lettres (ex: L2001). Quand je choisis L2001 mon deuxième como se remplit normalement par contre quand je rempli avec 7314 le como2 reste vide.
code utilisé ci-dessous:
Pour remplir le como1
"Set MonDico = CreateObject("Scripting.Dictionary")
For Each C In Range([D6], [D6500].End(xlUp))
If Not MonDico.Exists(C.Value) Then MonDico.Add C.Value, C.Value
Next C
Temp = MonDico.items
Call Tri(Temp, LBound(Temp), UBound(Temp)) ' voir module mod_tri
Me.Choixréférence.List = Temp
Me.Choixréférence.ListIndex = 0"

Pour remplir le como2
"Private Sub Choixréférence_Change() 'affichage numéros de notes de débit
Me.Choixcatégorie.Clear
On Error Resume Next
ActiveSheet.ShowAllData
ActiveSheet.Range("D6:D6500").AutoFilter Field:=4, Criteria1:=Choixréférence
For Each C In Range([D6], [D6500].End(xlUp))
If C = Me.Choixréférence Then Me.Choixcatégorie.AddItem C.Offset(0, -3)
Next C
Me.Choixcatégorie.ListIndex = 0
End Sub

Pouvez vous m'aider à solutionner ce problème.

Merci

3 réponses

Messages postés
115
Date d'inscription
dimanche 6 avril 2003
Statut
Membre
Dernière intervention
29 juin 2012

bonjour
peut etre Str(C.Value) ou Cstr(C.Value) ?
qui je crois transforme en string...
@+JP
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
233
Bonjour,

Un code non indenté
Des on error resume next (pas beau)
Une variable C non typée

J'ai dans de tels cas peu envie de répondre.

Je vais faire une exception, mais elle sera très succincte :
L'objet Range n'a pas que la propriété Value


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement vous dire ce qu'elle contient. Je n'interviendrai qu'en cas de nécessité de développ
Messages postés
1402
Date d'inscription
mardi 1 mai 2007
Statut
Membre
Dernière intervention
7 octobre 2012
5
Bonsoir,

Désactives le On Error Resume Next.
Il y' a sûrement une erreur dans ce qui s' en suit.







[] Ce qui va sans dire. va mieux en le disant.