Fonction isnumeric améliorée

Soyez le premier à donner votre avis sur cette source.

Snippet vu 7 820 fois - Téléchargée 48 fois

Contenu du snippet

Ce code sert à remplacer la fonction isnumeric de VB en corrigeant ses bugs.
Exemples à tester
IsNumeric("1f") renvoie vrai
IsNumreric("1+") renvoie vrai
IsNumeric("5,") renvoie Vrai

Source / Exemple :


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

Conclusion :


ben rien de plus en fait

VUX

A voir également

Ajouter un commentaire Commentaires
Messages postés
58
Date d'inscription
lundi 7 janvier 2002
Statut
Membre
Dernière intervention
26 janvier 2005

trop fort
mais je pense qu'il y a une erreur dans l enoncé : 4f et 4+ renvoi faux
Messages postés
2
Date d'inscription
mardi 31 octobre 2000
Statut
Membre
Dernière intervention
27 juillet 2011

Avec Ca en plus, ca marche dans tous les cas
Dim digit2 As Integer
If Format(0, ".") "." Then digit2 46 Else digit2 = 44
Messages postés
55
Date d'inscription
mercredi 31 juillet 2002
Statut
Membre
Dernière intervention
19 novembre 2004

Bravo
Elle est très bien cette fonction
Elle marche parfaitement et elle est facileà comprendre
Bravo et merci !
Messages postés
55
Date d'inscription
mercredi 31 juillet 2002
Statut
Membre
Dernière intervention
19 novembre 2004

Bravo
Elle est très bien cette fonction
Elle marche parfaitement et elle est facileà comprendre
Bravo et merci !
Messages postés
27
Date d'inscription
mercredi 18 avril 2001
Statut
Membre
Dernière intervention
25 juillet 2002

non val convertit une expression en sa valeur numérique.
isnumeric indique juste si l' expression est une valeur numérique ou non.
Afficher les 7 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.