Scrabblouille
XLDnaute Nouveau
Bonjour,
En m'aidant d'un ancien sujet et des indications de Boisgontier j'ai pu réaliser mes box en cascade. Néanmoins j'ai déclaré ma variable Societe en variant car j'ignore comment la déclarer au mieux. Pourriez-vous m'aider sur ce point ?
Une fois la société et la ville choisie mon client est clairement identifié et je souhaiterais récupérer d'autres champs mais répéter la méthode pour chaque donnée me parait long.
Y aurait-il une possibilité de récupérer par exemple le numéro de la ligne excel sur laquelle les valeurs des 2 combobox sont présentes, sachant que la ligne est nécessairement unique ?
Vous remerciant par avance de l'aide que vous pourriez m'apporter.
Ci-joint le morceau de code concerné.
Cordialement.
En m'aidant d'un ancien sujet et des indications de Boisgontier j'ai pu réaliser mes box en cascade. Néanmoins j'ai déclaré ma variable Societe en variant car j'ignore comment la déclarer au mieux. Pourriez-vous m'aider sur ce point ?
Une fois la société et la ville choisie mon client est clairement identifié et je souhaiterais récupérer d'autres champs mais répéter la méthode pour chaque donnée me parait long.
Y aurait-il une possibilité de récupérer par exemple le numéro de la ligne excel sur laquelle les valeurs des 2 combobox sont présentes, sachant que la ligne est nécessairement unique ?
Vous remerciant par avance de l'aide que vous pourriez m'apporter.
Ci-joint le morceau de code concerné.
Cordialement.
Code:
Option Explicit
Dim c As Range
Dim i As Integer
Dim Mondico As Object
Dim Societe As Variant
Dim temp As String
Private Sub UserForm_Initialize()
Me.Nom.SetFocus
Set Mondico = CreateObject("Scripting.Dictionary")
For Each c In Worksheets("Revendeurs").Range("Rev_Societe")
Mondico(c.Value) = c.Value
Next
Me.Nom.List = Mondico.items
End Sub
Private Sub Nom_Change()
Set Mondico = CreateObject("Scripting.Dictionary")
Societe = [Rev_Societe]
For i = 1 To Worksheets("Revendeurs").Range("Rev_Ville").Count
If Societe(i, 1) = Me.Nom Then
temp = Range("Rev_Ville")(i)
Mondico(temp) = temp
End If
Next i
Me.Ville.List = Mondico.items
If Me.Ville.ListCount = 1 Then
Me.Ville.ListIndex = 0
Else: Me.Ville.ListIndex = -1
End If
End Sub