Bonjour,
Comment peut-on faire pour savoir si un champ est un entier ou non ??
IsNumeric ne marche que pour les numériques mais pour les entiers il n'y a pas de fonction IsInteger à ma connaissance.
Merki
Bonjour,
Comment peut-on faire pour savoir si un champ est un entier ou non ??
IsNumeric ne marche que pour les numériques mais pour les entiers il n'y a pas de fonction IsInteger à ma connaissance.
Merki
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 If VarType(MaVariable) = vbInteger Then ... If VarType(MaVariable) = vbLong Then ...
Sachant que le contenu vient d'un champ texte (Monchamp.text), tu penses que je peux le tester directement ou je dois mettre le texte du champ dans une variable ???
Si tu récupères une valeur d'un champ texte, il faut procéder ainsi (on suppose que le champ est un TextBox) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Dim D as Double If isNumeric(Text1.Text) Then D=CDbl(Text1.Text) If D-Int(D) = 0 Then 'Le nombre est entier Else 'Le nombre est décimal End if Else 'Ce n'est pas un nombre End if
Merci beaucoup. Dommage qu'il n'y aie pas de fonction IsInteger ^^
Il suffit de créer la fonction :
Renvoie Vrai si l'expression est un Integer ou un Long.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 Public Function isInteger(Expression As Variant) As Boolean Dim D As Double If IsNumeric(Text1.Text) Then D = CDbl(Text1.Text) If D = Int(D) Then isInteger = True End If End Function
C'est ce que j'ai fait ^^
Partager