Bonjour, débutant en vba je me retrouve devant un petit souci.
Je n'arrive pas à récupérer les bonnes valeurs de cellules après avoir trié mes données dans une combobox.
Les données affichées sont celles du numéro de ligne dans la feuille et non les données dans la ligne sélectionnée dans ma combobox.
Voilà mes deux morceaux de codes utilisés pour les procédures.
D'abord je charge mes données dans ma combobox et je les trie
Ensuite je récupère la valeur indiquée dans la combobox pour remplir mes txtbox:
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 '********************************** 'Procédure pour alimenter et trier* 'ma combobox cbxListNom à * 'l'ouverture de l'userform * '********************************** Private Sub UserForm_Initialize() For Each c In Range("C2:C" & Range("C65536").End(xlUp).Row) cbxListNom = c If cbxListNom.ListIndex = -1 And cbxListNom <> "" Then cbxListNom.AddItem c Next c With cbxListNom For i = 0 To .ListCount - 1 For k = 0 To .ListCount - 1 If .List(i) < .List(k) Then temp = .List(i) .List(i) = .List(k) .List(k) = temp End If Next k Next i .ListIndex = -1 End With
Et c'est là que je ne récupère pas les bonnes infos
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 '************************** '*Procédure pour activer * '*la recherche par nom * '************************** Private Sub btnValiderRecheNom_Click() Dim no_ligne As Integer no_ligne = cbxListNom.ListIndex + 2 txtCivilite.Value = Cells(no_ligne, 2).Value txtNom.Value = Cells(no_ligne, 3).Value txtDateN.Value = Cells(no_ligne, 4).Value txtAdresse.Value = Cells(no_ligne, 5).Value txtCP.Value = Cells(no_ligne, 6).Value txtVille.Value = Cells(no_ligne, 7).Value txtTelephone.Value = Cells(no_ligne, 8).Value txtCourriel.Value = Cells(no_ligne, 9).Value
J'ai la même procédure pour une recherche par code client qui marche très bien,
mais il n'y a pas de tri puisque les n°de code clients suivent le même ordre que les n° de ligne de la feuille
Merci pour l'aide.
Partager