Bonjour,
En essayant de débuguer un programme, qui faisait un usage intensif de la fonction Evaluate, j'ai
fini par isoler un comportement bizarre illustré par le code suivant :
Et le résultat obtenu est :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 Function test() Debug.Print "enter" Dim ws As Worksheet Set ws = ActiveSheet myString = "04/01/2017=04/04/2017" If (ws.Evaluate(myString)) Then Debug.Print " same date " & myString Else Debug.Print " different date " & myString End If myString = "04/01/2017=16/04/2017" If (ws.Evaluate(myString)) Then Debug.Print " same date " & myString Else Debug.Print " different date " & myString End If Debug.Print "exit" test = 1 End Function
enter
different date 04/01/2017=04/04/2017
same date 04/01/2017=16/04/2017
exit
C'est tout de même surprenant, le code semble fonctionner pour certaines dates, et pas pour d'autres.
J'aimerais bien comprendre ce qui se passe, et je l'espère éviter de devoir entièrement refaire mon classeur.
Partager