Private Function IsDouble(ByRef Chaine As String) As Boolean Dim i As Integer Dim digit As Integer Dim char As String * 1 Dim Point As Boolean IsDouble = True Point = False For i = 1 To Len(Chaine) char = Mid(Chaine, i, 1) digit = Asc(char) If (i <> 1) Or ((i = 1) And char <> "-") Then If digit <> 46 And (digit < 48 Or digit > 57) Then IsDouble = False Exit Function Else If (digit = 46) Then If Point = True Then IsDouble = False Else Point = True End If End If End If Else If Len(Chaine) <= 1 Then IsDouble = False Exit Function End If End If Next i End Function
Note: le 46 indique le caractère "." pour la virgule.Si vous voulez utiliser le caractère ',' remplacez 46 par 44
c'est pas la fonction val ca ???
non val convertit une expression en sa valeur numérique.isnumeric indique juste si l' expression est une valeur numérique ou non.
BravoElle est très bien cette fonctionElle marche parfaitement et elle est facileà comprendreBravo et merci !
Avec Ca en plus, ca marche dans tous les casDim digit2 As IntegerIf Format(0, ".") = "." Then digit2 = 46 Else digit2 = 44
trop fortmais je pense qu'il y a une erreur dans l enoncé : 4f et 4+ renvoi faux
Se souvenir du profil
Mot de passe oublié ? / Activation de compteCréer un compte
1 873 988 membres 22 nouveaux aujourd'hui 16 151 membres club