chiffre ou caractère

  • Initiateur de la discussion julien
  • Date de début
J

julien

Guest
j'ai écrit cette fonction dans le but de savoir si lorsque je rentre un chiffre du format 140.77.112.217 ou 14077112217 je puisse savoir si en position 4 il y a un point ou un chiffre et de ce fait si ma valeur est string ou nombre mais je n'arrive pas à rendre un résultat...

Function isnumberr(no_avs As Variant)
If Application.WorksheetFunction.IsNumber(mid(no_avs, 4, 1)) = False Then
avs_naiss1 = False
ElseIf no_avs - Int(no_avs) = 0 Then
avs_naiss1 = True
Else: avs_naiss1 = False
End If
isnumberr = avs_naiss1

End Function

quelqu'un sait-il pourquoi?

merci à tous
 
M

Minick

Guest
Salut,

essai comme ca

Function isnumberr(no_avs As Variant)
If IsNumeric(mid(no_avs, 4, 1)) = False Then
avs_naiss1 = False
ElseIf no_avs - Int(no_avs) = 0 Then
avs_naiss1 = True
Else: avs_naiss1 = False
End If
isnumberr = avs_naiss1

End Function



@+
Minick
 
Z

ZON

Guest
Bonsoir à tous,

Julien il faut que ta fonction renvoie un résultat si tu veux t'en servir ailleurs,
on peut écrire le code de la façon suivante, Si le caractere en position 4 isnumber prend true sinon dans les autres cas elle renvoire false

Function isnumberr(no_avs As string) as boolean
isnumber=iif( IsNumeric(mid(no_avs, 4, 1)),True,False)
end function

A+++
 

Discussions similaires

Réponses
2
Affichages
259
Réponses
13
Affichages
305
Réponses
17
Affichages
441

Statistiques des forums

Discussions
312 520
Messages
2 089 285
Membres
104 083
dernier inscrit
hecko