Recherche d'une chaine dans des cellules Excel en VBA

Signaler
Messages postés
10
Date d'inscription
mercredi 8 novembre 2000
Statut
Membre
Dernière intervention
9 mars 2010
-
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
-
Bonjour,

je souhaite recherche une chaine dans des cellules dans excel. Je NE souhaite PAS que la cellule contienne EXACTEMENT la chaine mais plutot qu'elle INCLUT la chaine en question

donc si la cellule A1 contient la string "elephant rose"
et que je fais une recherche pour la chaine "phant", je voudrais que la cellule A1 soit trouvée.

je croyais que je devais utiliser la propriété xlPart, mais ca n'a pas l'air à fonctionner:

Set cellule = Range("A1:A500").Find("phant", , , xlPart)


Merci de votre aide!

3 réponses

Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
240
Bonjour
Je viens de vérifier ===>> ton code fonctionne tel quel !

Bien que personnellement, je préfèrerais l'écrire ainsi (plus clair) :
Dim cellule As Range
Set cellule = Range("A1:A500").Find(What:="phant", Lookat:=xlPart, MatchCase:=False)
If Not cellule Is Nothing Then MsgBox cellule.Address Else MsgBox "y'en a pas"


____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Messages postés
10
Date d'inscription
mercredi 8 novembre 2000
Statut
Membre
Dernière intervention
9 mars 2010

t,as raison, ca fonctionne... c'est moi le con qui cherchait pas dans la bonne colonne!!! :(

Dis-moi, est-il possible de chercher dans une colonne entière au lieu de définir une plage avec un nombre absurde comme par exemple Range(A1:A999999999999) pour etre certain qu'il cherche la colonne au complet?

Merci!
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
240
1) tu cliques sur le tag "réponse acceptée"
2) tu t'intéresse à ce qu'est, par exemple, UsedRange (à voir dans ton aide en ligne)
3) que serait selon toi le Range Range("A:A") ? (encore que je serais bien le dernier à te le recommander !

____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est