VBA recherche

Fermé
Artiste - 24 févr. 2019 à 15:08
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 - 24 févr. 2019 à 16:03
Bonjour,

Après un samedi aprem à chercher par moi-même la solution, j'ai besoin d'un coup de main :)

L'idée de la macro que j'essaye de faire c'est qu'en rentrant un mot clé dans un text box, ce même mot clé apparaisse dans une colonne avec plein de cellule qui peuvent ou non comporter ce nom

Exemple; je cherche le mot bonjour et le ce mot bonjour est dans une colonne ligne 5 , ligne 67, ligne 1009 ect...

j'essaye de faire cet exercice mais je coince et je cherche à m'améliorer en VBA


j'ai crée le texte box dans le lequel je peux écrire le mot clé mais il n'apparait dans la colone en vert comme je pensais que devrait
le code bug à Private Sub TextBox1_Change() pour "Compile Error : variable required - can't assigne to this expressions

si vous avez une piste je suis preneur j'aimerai avoir la satisfaction d' y arriver...

voila mon bout de code :

Private Sub TextBox1_Change()

Application.ScreenUpdating = False

Range("A2:A10000").Interior.ColorIndex = 2

If TextBox1 <>
For ligne = 2 To 24
If Cells(ligne, 1) Like "*" & TextBox1 & "*" Then
Cells(ligne, 1).Interior.ColorIndex = 43
End If
Next

End Sub



Merci à vous

3 réponses

Patrice33740 Messages postés 8556 Date d'inscription dimanche 13 juin 2010 Statut Membre Dernière intervention 2 mars 2023 1 776
24 févr. 2019 à 15:21
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
24 févr. 2019 à 15:26
Bonjour
Ton code comporte des erreurs
If TextBox1 <> appelle une suite et un Then
Tu n'as pas remis le raffraichissement écran à Vrai en fin de macro

Essaie ceci :
Private Sub TextBox1_Change()
Application.ScreenUpdating = False
Range("A2:A10000").Interior.ColorIndex = 2
If TextBox1 <> "" Then
For ligne = 2 To 24
If Cells(ligne, 1) Like "*" & TextBox1 & "*" Then Cells(ligne, 1).Interior.ColorIndex = 43
Next
End If
Application.ScreenUpdating = True
End Sub

Cdlmnt
Via
0
Merci Via pour ces explications.

Le code ne semble plus bugger, et j'ai donc un peu mieux compris mon bout de code.

Par contre quand j'écris mon mot clé dans le text box il ne le retrouve pas dans ma liste. (j'ai fait un test exprès en mettant un mot que je voyais écris dans la colonne A ).

J'imagine que c'est très dur à distance de m'aiguiller, mais saurais-tu me dire ou regarder pour que je puisse y arriver . Pour le coup je n'ai pas de piste puisque ton code corrigé aurait du dans mon esprit résoudre mon problème.

J'ai juste crée un user forme text box sur lequel j'ai rataché le code. ( et j'ai mis option compare text au tout debut pour si j'ai bien compris que ca marche avec des minuscules/majuscules/partie du mot recherché)

Merci pour ton temps .
Alain
0
via55 Messages postés 14403 Date d'inscription mercredi 16 janvier 2013 Statut Membre Dernière intervention 24 avril 2024 2 703
24 févr. 2019 à 16:03
Poste ton fichier sur le site mon-partage.fr, fais créer un lien que tu copies et reviens coller ici
0