Bonjour,
Je suis entrain de transcrire une application "ACCESS" sous "EXCEL".
Mes connaissances EXCEL étant pratiquement nulle, je me suis inspiré d'un modéle trouvé sur le net pour créer un formulaire.
Après mes modifications, le fonctionnement est satisfaisant.
J'ai besoin de votre aide pour affiner la recherche d'un mot dans toute la feuille.
Le code suivant me renvoie plusieurs fois un résultat quand plusieurs cellules d'une même ligne contiennent le mot recherché.
Comment faire pour que le combobox ne contienne qu'une seule fois la ligne dont une ou plusieurs cellules contiennent le mot recherché ?
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 Private Sub B_ok1_Click() Me.ComboBox1.Clear I = 0 'selectionne toute les cellules de la feuille nommée : ws Set plage = Ws.[A1].CurrentRegion 'MotRecherche provient d'un textbox du formulaire Set c = plage.Find(Me.MotRecherche, , , xlPart) If Not c Is Nothing Then premier = c.Address Do Me.ComboBox1.AddItem lig = c.Row Me.ComboBox1.List(I, 0) = plage.Cells(lig, 1) Me.ComboBox1.List(I, 1) = lig I = I + 1 Set c = plage.FindNext(c) Loop While Not c Is Nothing And c.Address <> premier End If If Me.ComboBox1.ListCount > 0 Then pointeur = 0 ligne = Me.ComboBox1.List(pointeur, 1) affiche Else MsgBox " ATTENTION - Recherche sans résultat " End If End Sub
Merci de vos réponses.
JCB
Partager