begin process at 2012 02 13 07:18:39
  Trouver un code source :
 
dans
 
Accueil > 

Code

 > 

Maths

 > FONCTION ISNUMERIC AMÉLIORÉE

FONCTION ISNUMERIC AMÉLIORÉE


 Information sur la source

Note :
10 / 10 - par 3 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10
Catégorie :Maths Classé sous :isnumeric, numérique Niveau :Débutant Date de création :04/01/2002 Date de mise à jour :04/01/2002 23:04:21 Vu :5 727

Auteur : VUX

Ecrire un message privé
Site perso
Commentaire sur cette source (7)
Ajouter un commentaire et/ou une note

 Description

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

  • 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
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


 Sources du même auteur

Source avec Zip BD ADMIN: ADMINISTRATEUR DE BASES DE DONNÉES
Source avec Zip DIRTREEVIEW OCX,UN CONTROLE AMÉLIORÉ DE DIRLISTBOX
Source avec Zip FORMULE DU BINOME (X+Y)^N
Source avec Zip CALCUL DES FPS D' UN JEU
Source avec Zip PUISSANCE 4

 Sources de la même categorie

Source avec Zip Source avec une capture CONVERTISSEUR HEXAVIGÉSIMAL par shaeks
Source avec Zip Source avec une capture Source .NET (Dotnet) CRYPTOGRAPHIE AFFINE par Tigrou66
Source avec Zip Source avec une capture SCANNER FLEX par lajouad
Source avec Zip EQUATIONSECONDDEGRÉ,MATH,DEGRÉ par shadkitenge
Source avec Zip Source .NET (Dotnet) SOMME DE CHIFFRES CONTENUE DANS UN NOMBRE par alpha5

 Sources en rapport avec celle ci

Source avec Zip TEXTBOX EN NUMÉRIQUE par 320C
Source .NET (Dotnet) [VB.NET] NUMERIXBOX - UNE TEXTBOX NUMÉRIQUE QUI GÈRE LES DÉC... par Benouille
Source avec Zip LECTEUR DE PLAN NUMÉRIQUE par filou26
Source .NET (Dotnet) TEXTBOX NUMÉRIQUE par GG29
Source avec Zip COMPOSANTS VIRTUELS D'ÉLECTRONIQUE NUMÉRIQUE DE BASE par avelis

Commentaires et avis

Commentaire de VUX le 04/01/2002 23:07:36

Note: le 46 indique le caractère "." pour la virgule.
Si vous voulez utiliser le caractère ',' remplacez 46 par 44

Commentaire de thebigbang le 05/01/2002 09:50:19

c'est pas la fonction val ca ???

Commentaire de VUX le 05/01/2002 23:02:40

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

Commentaire de GarnetDiAlexandros le 17/09/2002 11:32:21

Bravo
Elle est très bien cette fonction
Elle marche parfaitement et elle est facileà comprendre
Bravo et merci !

Commentaire de GarnetDiAlexandros le 17/09/2002 11:32:46

Bravo
Elle est très bien cette fonction
Elle marche parfaitement et elle est facileà comprendre
Bravo et merci !

Commentaire de Charlie76 le 21/11/2003 13:51:44

Avec Ca en plus, ca marche dans tous les cas
Dim digit2 As Integer
If Format(0, ".") = "." Then digit2 = 46 Else digit2 = 44

Commentaire de math85 le 24/05/2004 16:30:14

trop fort
mais je pense qu'il y a une erreur dans l enoncé : 4f et 4+ renvoi faux

 Ajouter un commentaire


Discussions en rapport avec ce code source dans le forum

Isnumeric [ par Vivolenantais ] Comment fait-on pour ne rentrer soit que du num&#233;rique dans un textbox, soit que du alphanum&#233;rique. Et lorsqu'un textbox est pr&#233;vue pour Pourquoi Isnumeric est si lent en DotNet ? [ par Silmon ] Bonjour à tous! Je constate qu'utiliser des fonctions VB en dotnet comme Isnumeric est trés lent lors du premier appel. Pourquoi? Existe-t-il une fon Format Numérique dans ComboBox (deux chiffres après la virgule) [ par Sweet_7694 ] Bonjour,Je cherche comment rentrer dans ma ComboBox un texte qui sera num&#233;rique et admettant seulement deux chiffres apr&#232;s la virgule.J'ai e ISNUMERIC () [ par tekila_bandita ] J'aimerais savoir s'il existait une commande de type "isnumeric()" pour les "lettres"... enfaite, j'ai une inputbox, mais si le gar tape une lettre au *** Recherche dans un Champs de Type Numérique (Access) *** [ par Heny ] Salut tout le monde &nbsp; AdoClients.Recordset.Filter = "T&#233;l&#233;phone LIKE " &amp; Len(Text1(5).Text) &amp; "'" J&#146;utilise ce code pour r Convertir un champ numérique en champ texte [ par patrick55 ] Bonjour, j'ai un champ composé de trois champs. NumérocPE et de type numérique formaté (000) avec 3 chiffre. Quand je reçois la formule il me don Convertir un champ numérique en texte [ par patrick55 ] Bonjour, j'ai un champ composé de trois champs. NumérocPE et de type numérique formaté (000) avec 3 chiffre. Quand je reçois la formule il me don Voudrais un Conseil [ par WARRIOSS ] Salutation.j'ai un projet a rendre pour dans 1 mois. je dois faire un programme qui cr&#233;e et sauvegarde les menu d'un restaurant. Pour cela, je do Besoin de conseil [ par WARRIOSS ] Salutation.j'ai une base de donn&#233;e sous access. dans mes tables, j'ai plusieurs champs qui sont du type Num&#233;rique mais qui ne depasseront ja Besoin de conseil [ par WARRIOSS ] Salutation. j'ai une base de donnée sous access. dans mes tables, j'ai plusieurs champs qui sont du type Numérique mais qui ne depasseront jamais 2 c


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,342 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales