Public tab_famille As Variant
Public tab_sous_famille As Variant
Public Sub Famille_change()
For i = 0 To Famille.ListCount
If Me.Famille.Selected(i) = True Then
ma_selection = i
famille_selectionnee = Me.Famille.List(ma_selection)
Exit For
End If
Next i
'MsgBox "Sélection : " & famille_selectionnee
'recherche de l'index
For i = 1 To UBound(tab_famille, 1)
If famille_selectionnee = tab_famille(i, 1) Then
famille_selectionnee_index = tab_famille(i, 2)
Exit For
End If
Next i
'remplir les listes
Stockfrm.Sousfamille.Clear
For i = 1 To UBound(tab_sous_famille, 1)
If tab_sous_famille(i, 2) = famille_selectionnee_index Then
Stockfrm.Sousfamille.AddItem tab_sous_famille(i, 1)
End If
Next i
End Sub
Public Sub UserForm_Activate()
With Sheets("Adresses")
'création d'un tableau pour les familles
tab_famille = .Range("A2:B" & .Range("B65000").End(xlUp).Row).Value
'création d'un tableau pour les sous-familles
tab_sous_famille = .Range("C2:D" & .Range("D65000").End(xlUp).Row).Value
End With
'remplir les listes
Stockfrm.Famille.Clear
For i = 1 To UBound(tab_famille, 1)
Stockfrm.Famille.AddItem tab_famille(i, 1)
Next i
'remplir les listes
Stockfrm.Sousfamille.Clear
For i = 1 To UBound(tab_sous_famille, 1)
Stockfrm.Sousfamille.AddItem tab_sous_famille(i, 1)
Next i
End Sub