Les limites de IsNumeric

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 !

Magic_Doctor

XLDnaute Barbatruc
Supporter XLD
Bonsoir,

Pour un contrôle de saisies j'utilise la fonction VBA IsNumeric.

J'ai fait des tests pour voir comment cette fonction réagissait.

IsNumeric(22) ---> VRAI
IsNumeric(3,5) ---> VRAI
IsNumeric(0,02,3) ---> FAUX
IsNumeric(-33,6) ---> VRAI
IsNumeric(zaza) ---> FAUX
.
.
.
mais : IsNumeric(6+) ---> VRAI (????)

IsNumeric(3*) ---> FAUX

mais : IsNumeric(3-) ---> VRAI (????)

Peut-on contourner ces bizarreries ?

Merci d'avance.
 
Re : Les limites de IsNumeric

Bonjour,

Toujours en quête d'un contrôle de saisies le plus performant possible, j'ai rencontré d'autres failles.

Dans ce contrôle de saisies je n'accepte que les valeurs numériques positives, la cellule vide et, selon le cas, la valeur 0.
Donc, tout ce qui est texte ou qui n'a pas de sens sera exclu.

Public Function ControleSaisie(saisie As Range, dilemme As Byte) As Byte
'Magic_Doctor/Hasco

If saisie = "" Then
ControleSaisie = 0 'la cellule vide est autorisée
ElseIf dilemme = 1 And saisie <= 0 Or Not IsNumeric(saisie) Or TypeName(saisie.Value) = "String" Then
ControleSaisie = 1 'cellule avec contenu non numérique ou <= 0 pas autorisée
ElseIf dilemme = 0 And saisie < 0 Or Not IsNumeric(saisie) Or TypeName(saisie.Value) = "String" Then
ControleSaisie = 1 'cellule avec contenu non numérique ou < 0 pas autorisée
Else
ControleSaisie = 0 'tout le reste est autorisé
End If

End Function

Mais maintenant si, par inadvertance (fatigue, soleil, boisson...) je rentre dans une cellule contrôlée :
--6 ---> le chiffre 6 va apparaître (normal : - X - = +) mais avec un agaçant petit logo d'erreur à gauche de la cellule. Comment faire pour que d'emblée --valeur numérique soit considéré comme une donnée erronée.
Idem pour ++6

Maintenant si je rentre uniquement ++ ou --, apparaît un message d'erreur qui, traduit au français, serait :
"Erreur dans la formule introduite..."
Comment faire pour que dans cette autre situation la saisie soit aussi considérée d'emblée comme une erreur ?
 
- 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

Discussions similaires

  • Question Question
XL pour MAC Calcul de notes.
Réponses
5
Affichages
814
Réponses
40
Affichages
4 K
Retour