Méthode find + valeur formule

Messages postés
18
Date d'inscription
mercredi 20 février 2019
Statut
Membre
Dernière intervention
17 juillet 2019
-
Bonjour,

j'ai vu plusieurs postes traitant du sujet de la méthode Find mais aucun malheureusement qui m'a permis de régler mon problème. Pouvez-vous m'aider ?

Je cherche simplement à retrouver intJourEnleve dans une feuille. Malheureusement, la méthode find renvoie à toutes mes tentatives Nothing.

Je précise que dans les deux feuilles (origine, destination), toutes les valeurs sont issues de formules.

Que puis-je faire ?

Merci pour votre aide, mon code ci-dessous :

Set rngSearchRangePrerequis = wshPrerequis.Range("P6", "AQQ6")
Set rngSearchRangePCDFSeq = wshPCDFSeq.Range("P6", "AQQ6")


For NbCol = 4 To NbTotal
    If wshCal.Cells(19, NbCol).Interior.ColorIndex = 3 Then
        intJourEnleve = wshCal.Cells(17, NbCol).Value
        Set rngDatePrerequis = rngSearchRangePrerequis.Find(intJourEnleve, LookAt:=xlWhole, LookIn:=xlValues)
        Set rngDatePCDFSeq = rngSearchRangePCDFSeq.Find(intJourEnleve, LookAt:=xlWhole, LookIn:=xlValues)
        
        If rngDatePrerequis Is Nothing Then
            MsgBox "Rien"
            Exit Sub
        End If
        
        With rngDatePrerequis
            .Interior.ColorIndex = 3
        End With
        
        With rngDatePCDFSeq
            .Interior.ColorIndex = 3
        End With
        
    End If
Next NbCol
Afficher la suite 

2 réponses

Meilleure réponse
Messages postés
26138
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 août 2019
1759
2
Merci
Bonjour,

Les cellules qui contiennent ta valeur cherchée.... ne contiennent rien d'autre ? pas d'autres valeurs, des espaces ...?? Idem dans la valeur à chercher ?

Car tu utilises le xlWhole donc tu fais une recherche "Exacte".
As tu essayé avec un xlPart ?

Sinon, postes nous un exemple de classeur où tu peux nous montrer le souci... histoire qu'on puisse réaliser des tests de notre cote.


Dire « Merci » 2

Heureux de vous avoir aidé ! Vous nous appréciez ? Donnez votre avis sur nous ! Evaluez CommentCaMarche

CCM 59095 internautes nous ont dit merci ce mois-ci

jordane45
Messages postés
26138
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 août 2019
1759 -
Et dans le LookIn:= tu peux jouer avec
xlComments -4144 Commentaires.
xlFormulas -4123 Formules.
xlValues -4163 Value.
iadi06
Messages postés
18
Date d'inscription
mercredi 20 février 2019
Statut
Membre
Dernière intervention
17 juillet 2019
-
Excellent, ça fonctionne. Il fallait passer en xlPart effectivement.

Je t'avoue que je ne comprends pas pourquoi ça ne fonctionne pas avec xlWhole car la cellule départ = 1

et la cellule recherché = 1. Les deux avec le même format.
Commenter la réponse de jordane45
Messages postés
9062
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
23 août 2019
1609
0
Merci
Bonjour

Comme dit jordane45 que je salue au passage, xlPart devrait convenir pour une recherche du résultat d'une formule, un petit exemple
https://www.cjoint.com/c/IDCjBdgRnEB

Cdlmnt
ccm81
Messages postés
9062
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
23 août 2019
1609 -
PS. j'ai oublié d'ajouter : à condition que cette valeur apparaisse dans le texte de la formule, par exemple
=SI(A2=2;"toto";"titi")
Si ce n'est pas le cas, par exemple (H2 = toto)
=SI(G2=2;H2;"titi")
La méthode Find ne fonctionnera plus
https://www.cjoint.com/c/IDCl7VHY36B

Restera la solution de boucler et comparer chaque cellule avec la valeur cherchée

Cdlmnt
iadi06
Messages postés
18
Date d'inscription
mercredi 20 février 2019
Statut
Membre
Dernière intervention
17 juillet 2019
-
Merci les gars pour vos réponses rapides.

ça fonctionne nickel maintenant.

Je laisse le sujet ouvert juste pour rapidement échanger avec vous sur le pourquoi cela fonctionne maintenant. Puis je mettrais que c'est résolue.
Commenter la réponse de ccm81