Bonjour à tous,

voilà, j'ai une combobox dans laquel j'affiche les noms de la colonne A de ma feuille excel, et je voudrais en sélectionnant le nom dans ma combobox que ça m'affiche dans ma textbox le prenom de la personne sélectionné (prénom qui se trouve dans ma colonne B), mais je ne sais pas comment faire j'ai des erreurs lorsque je lance ma macro
je vous montre mon code

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
Private Sub Ini() 'initialisation de l'USF
Dim CTRL As Control     'Variable pour la collection des controls
Dim L As Long           'Variable pour connaitre le numéro de derniere ligne
Dim i As Long           'Variable pour connaitre incrémenter les Data
Dim sItem As String     'mémorise le dernier élément mis en liste
Dim WS As Excel.Worksheet
 
'On Vide tous les Controls
For Each CTRL In Me.Controls
If TypeOf CTRL Is MSForms.TextBox Or TypeOf CTRL Is MSForms.ComboBox Then
CTRL = ""
End If
Next CTRL
Me.CmbNom.Clear 'On vide les précédentes données
Set WS = ThisWorkbook.Sheets("Base") 'On identifie l'objet pour la feuille de travail
L = WS.Range("A65536").End(xlUp).Row    'On identifie la dernière ligne en partant du bas
 
'Pour éviter les fash d'écran pour le select ci dessous
Application.ScreenUpdating = False
    WS.Select 'On sélectionne la feuille sinon bug si elle ne l'est pas
    WS.Range("A2").Sort Key1:=Range("A2"), Order1:=xlAscending, Header:=xlGuess 'Le Sort
 
 
For i = 3 To L             'Boucle départ 2 (Ligne 2 de la feuille, jusqu'à dernière
    If WS.Range("A" & i) <> sItem Then
        sItem = WS.Range("A" & i)  'evite les doublons dans la combo
        Me.CmbNom.AddItem sItem   
    End If
Next i
 
Application.ScreenUpdating = True
End Sub
 
Private Sub CmbNom_Click() 'combo déclenché au click
If Me.CmbNom.ListIndex = -1 Then Exit Sub 'ON sort si pas de sélection
Txt1 = WS.Range("B" & Me.CmbNom.ListIndex + 2) 'On alimente les données correspondant à la ligne
 
'ici on initialise les Variable pour mémoriser le valeur précédente en cas de Modif
With Me
Nom = .CmbNom
End With
End Sub
merci d'avance