VBA - Problème avec "FIND"

  • Initiateur de la discussion Initiateur de la discussion NeMoS
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

N

NeMoS

Guest
Bonjour à tous,

Bon je deviens chèvre à force de tourner ce problème dans tous les sens:

Je cherche la valeur "TRUE" sur une plage de cellules (4 cellules d'une même ligne) et si je trouve TRUE alors j'exécute une petite macro...

Voici le code:
Code:
For i = 12 To fin
    If Not Sheets("SEARCH ENGINE").Range("c" & i & ":f" & i).Find(True) Is Nothing Then
      
       val = Sheets("SEARCH ENGINE").Range("A" & i).Value
       MsgBox val
       Set r = Sheets("PRODUCT KNOWLEDGE").Rows(2).Find(val, , xlValues, xlWhole)
       If Not r Is Nothing Then col = r.Column
       MsgBox col
     End if
Next

Les valeurs TRUE qui sont dans les cellules de Ci à Fi sont les résultats d'une checkbox

J'ai coché la checkbox en c12 ce qui donne une valeur TRUE, mais rien à faire, le FIND ne la voit pas.

J'ai essayé FIND(True), FIND("TRUE")
J'ai essayé en ne regardant que dans Range("C"&i)

Je ne comprends pas, j'ai déjà utilisé le FIND avec des checkbox, à peu près de la même façon et je n'arrive pas à savoir pourquoi il ne trouve pas la valeur True

Votre aide me sera très précieuse !!!

Par avance merci

Gwen
 
Re : VBA - Problème avec "FIND"

Bonjour Gwen,
Ton find fonctionne très bien, j'ai testé avec checkbox qui envoie vrai ou faux et Find(True)
Verifie la variable i et n'utilises pas la variable val qui est un mot clé VBA.
mets un point d'arrêt en début de macro et ensuite fait du pas à pas avec la touche F8
Bruno
 
Re : VBA - Problème avec "FIND"

Bonjour Bruno,

J'ai re-essayé en prenant en compte tes indications et rien n'y fait.
Ce qui est vraiment étrange c'est que quand j'ai créé la macro hier je n'avais pas de soucis avec le FIND, c'est depuis ce matin sans avoir rien changé. Au début je me suis dit que c'était peut être du au fait que je recherche TRUE (qui peut être vu soit comme un boolean soit comme une valeur texte) et j'ai remplacé la valeur TRUE pas le mot YES et refait un find sur YES mais il me met toujours qu'il trouve Vide....

Il n'y a pas de code avant car c'est la boucle qui initie le reste de la macro donc je ne vois pas d'où peut venir le blocage, c'est vraiment.....horripilant 🙂

J'ai tout fermé sans enregistrer et rouvert mon fichier ==> la macro fonctionne malgré le fait que la valeur renvoyée est toujours vide .....

C'est très incohérent !!!! Il y a forcément quelque chose quelque part qui fait bugger la boucle, il faut juste que je trouve où !!!

Merci pour ton aide

Gwen
 
Re : VBA - Problème avec "FIND"

Re,

Merci pour le fichier, j'ai fait afficher la valeur que tu as mise en E1 qui est le résultat de la checkbox.
Quand j'affiche cette valeur en utilisant la variable i (range("E"&i) ) il affiche correctement la valeur True
Ce qui somme toute est normal.

Maintenant dans mon code je fais la même chose [ en faisant afficher la valeur c&i qui est True] et là la msgbox est vide...c'est quand même fort !!

Cela dit mon code fonctionne malgré ce défaut, mais j'aimerai le résoudre car il rend ma macro peu fiable....

Gwen
 
Re : VBA - Problème avec "FIND"

Re à tous les deux....

Bon ben ça fonctionne parfaitement ....
Je crois que le soucis venait de la cellule où se trouvait la checkbox.
J'ai locké la checkbox sur sa cellule (disons c&i) et c'est cette même cellule qui lui est liée pour le résultat True ou False de la checkbox, et il semble (mais je ne sais pas bien pourquoi) que la macro n'arrive pas à récupérer la valeur dans celle cellule.

En revanche, en mettant le résultat de la checkbox dans une cellule d'à côté (comme l'a fait Youki (BJ) cela fonctionne beaucoup mieux.

Merci de votre aide à tous deux.

Gwen
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
4
Affichages
521
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Réponses
2
Affichages
411
Retour