Liste encascade

SARREL123 Messages postés 2 Date d'inscription lundi 3 août 2009 Statut Membre Dernière intervention 3 mai 2012 - 3 mai 2012 à 14:49
LIBRE_MAX Messages postés 1402 Date d'inscription mardi 1 mai 2007 Statut Membre Dernière intervention 7 octobre 2012 - 7 mai 2012 à 23:25
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

mjpmjp Messages postés 115 Date d'inscription dimanche 6 avril 2003 Statut Membre Dernière intervention 29 juin 2012
7 mai 2012 à 18:40
bonjour
peut etre Str(C.Value) ou Cstr(C.Value) ?
qui je crois transforme en string...
@+JP
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
7 mai 2012 à 18:49
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
0
LIBRE_MAX Messages postés 1402 Date d'inscription mardi 1 mai 2007 Statut Membre Dernière intervention 7 octobre 2012 6
7 mai 2012 à 23:25
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.
0
Rejoignez-nous