Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Recherche par mot clé (bis)

2 réponses
Avatar
Jdel
Bonjour,
Je vais essayer d'être plus clair que dans mon message d'hier qui n'a pas
obtenu de réponse.
Voila, il s'agit de faire une recherche par mot clé dans une liste de
nomenclature. Les mots clés sont contenus dans les cellules de la colonne C
de la feuille qui sert de table.
Le mot clé est saisi dans une InputBox. A partir de la, je cherche à
sélectionner les lignes dans lesquelles la cellule C contient le mot clé.
Attention, chaque cellule contient C une dizaine de mots.
J'ai essayé avec Find et avec Like sans résultat satisfaisant.
Le code VBA de mes essais se trouve dans mon message du 27/0/ 20:53
Merci
Jean-Pierre

2 réponses

Avatar
Daniel
Bonsoir.
Essaie :
Sub test()
Dim c As Range, ResAdr As String
Dim Rech As String
Rech = InputBox("Entrez le mot clé")
Set c = Range("C:C").Find(Rech, , , xlPart)
If Not c Is Nothing Then
ResAdr = c.Address
End If
Do
MsgBox c.Address
Set c = Range("C:C").FindNext(c)
Loop While Not c Is Nothing And ResAdr <> c.Address
End Sub
La recherche se fait sur une partie de la valeur de la celllule. La cellule
contenant "tototititata" sera sélectionnée si tu recherches "titi".
Si les mots sont séparés par des virgules, on peut mettre :
Set c = Range("C:C").Find(Rech & ",", , , xlPart)
Cordialement.
Daniel
"Jdel" a écrit dans le message de news:
44ca3e4c$0$864$
Bonjour,
Je vais essayer d'être plus clair que dans mon message d'hier qui n'a pas
obtenu de réponse.
Voila, il s'agit de faire une recherche par mot clé dans une liste de
nomenclature. Les mots clés sont contenus dans les cellules de la colonne
C de la feuille qui sert de table.
Le mot clé est saisi dans une InputBox. A partir de la, je cherche à
sélectionner les lignes dans lesquelles la cellule C contient le mot clé.
Attention, chaque cellule contient C une dizaine de mots.
J'ai essayé avec Find et avec Like sans résultat satisfaisant.
Le code VBA de mes essais se trouve dans mon message du 27/0/ 20:53
Merci
Jean-Pierre



Avatar
Jdel
Oui, ça a l'air de marcher, je vais essayer de l'adapter
Merci Daniel
"Daniel" a écrit dans le message de news:

Bonsoir.
Essaie :
Sub test()
Dim c As Range, ResAdr As String
Dim Rech As String
Rech = InputBox("Entrez le mot clé")
Set c = Range("C:C").Find(Rech, , , xlPart)
If Not c Is Nothing Then
ResAdr = c.Address
End If
Do
MsgBox c.Address
Set c = Range("C:C").FindNext(c)
Loop While Not c Is Nothing And ResAdr <> c.Address
End Sub
La recherche se fait sur une partie de la valeur de la celllule. La
cellule contenant "tototititata" sera sélectionnée si tu recherches
"titi".
Si les mots sont séparés par des virgules, on peut mettre :
Set c = Range("C:C").Find(Rech & ",", , , xlPart)
Cordialement.
Daniel
"Jdel" a écrit dans le message de news:
44ca3e4c$0$864$
Bonjour,
Je vais essayer d'être plus clair que dans mon message d'hier qui n'a pas
obtenu de réponse.
Voila, il s'agit de faire une recherche par mot clé dans une liste de
nomenclature. Les mots clés sont contenus dans les cellules de la colonne
C de la feuille qui sert de table.
Le mot clé est saisi dans une InputBox. A partir de la, je cherche à
sélectionner les lignes dans lesquelles la cellule C contient le mot clé.
Attention, chaque cellule contient C une dizaine de mots.
J'ai essayé avec Find et avec Like sans résultat satisfaisant.
Le code VBA de mes essais se trouve dans mon message du 27/0/ 20:53
Merci
Jean-Pierre