Merci Thumb Down ! Je comprends mais je trouve cela piégeux.
Du coup, j'en appelle aux développeurs vba de ce forum. Quelle est la bonne pratique pour faire un test qui n'est satisfait que sur un booléen de valeur True ou le texte "VRAI" ?
If Range("A1") then...
ne fonctionne pas car si Range("A1") est un nombre (sauf 0), c'est satisfait
If Range("A1") = True then...
ne fonctionne pas car si Range("A1") est égal à -1, c'est satisfait
If Not IsNumeric(Range("A1")) And Range("A1") = True Then...
ne fonctionne pas car si Range("A1") = True, IsNumeric(Range("A1")) renvoit True (donc Not IsNumeric(...) renvoie FAUX
Je suis donc sur
If Not Application.WorksheetFunction.IsNumber(Range("A1")) And Range("A1") = True Then...
qui fonctionne
ça me semble un peu compliqué pour un besoin aussi simple !
Votre avis ?
Partager