Discussion:
Validar numeros enteros
(demasiado antiguo para responder)
Junior
2003-11-27 21:02:03 UTC
Permalink
Estoy intentando validar que el numero que viene en un
archivo es un numero entero, utilizo la utlidad isnumeric,
pero tambien acepta como numeros 2300,89 23.88.

Intenté buscar una funcion como isInteger, pero no existe,
alguna idea de como validarlo?
Victor Koch
2003-11-27 21:10:58 UTC
Permalink
En x tenes el numero leido en un campo double, haces:

y=Fix(x)

if y<>x then
msgbox "no es entero"
else
msgbox "es entero"
endif
--

Un saludo, Víctor Koch.


"Junior" <***@discussions.microsoft.com> escribi� en el mensaje news:00e401c3b529$b5653020$***@phx.gbl...
Estoy intentando validar que el numero que viene en un
archivo es un numero entero, utilizo la utlidad isnumeric,
pero tambien acepta como numeros 2300,89 23.88.

Intenté buscar una funcion como isInteger, pero no existe,
alguna idea de como validarlo?
Junior
2003-11-27 21:33:52 UTC
Permalink
La idea es buena, pero si digito un numero como 1,7 me lo
acepta por la configuracion de la maquina, lo interpreta
como miles.

De modo que tu ejemplo depende de la configuracion del
windows.

Alguna otra idea?
-----Mensaje original-----
y=Fix(x)
if y<>x then
msgbox "no es entero"
else
msgbox "es entero"
endif
--
Un saludo, Víctor Koch.
Estoy intentando validar que el numero que viene en un
archivo es un numero entero, utilizo la utlidad isnumeric,
pero tambien acepta como numeros 2300,89 23.88.
Intenté buscar una funcion como isInteger, pero no existe,
alguna idea de como validarlo?
.
unknown
2003-11-27 23:28:30 UTC
Permalink
Post by Junior
La idea es buena, pero si digito un numero como 1,7 me lo
acepta por la configuracion de la maquina, lo interpreta
como miles.
De modo que tu ejemplo depende de la configuracion del
windows.
Alguna otra idea?
Hola, Junior:

*TODO* depende de la configuración regional de Windows!

Prueba con esto:

Public Function SoloNumeros(s As String) As Boolean
Dim i as Integer, ch As String
For i = 1 To Len(s)
ch = Mid(s, i, 1)
If ch < "0" Or ch > "9" Then
SoloNumeros = False
Exit Function
End If
Next
SoloNumeros = True
End Function

Puede ser un poco más complejo si esperas recibir enteros negativos, o si
tienes que validar el rango (-32768..32767). Pero por ahi van los tiros.
--
Salud!

Leonardo
[MS MVP - Visual Basic]
¡Adicto a .NET!
leonardo<arroba>mvps<punto>org
www.lazpurua.com
Junior
2003-11-28 00:03:37 UTC
Permalink
Gracias
-----Mensaje original-----
Post by Junior
La idea es buena, pero si digito un numero como 1,7 me
lo
Post by Junior
acepta por la configuracion de la maquina, lo interpreta
como miles.
De modo que tu ejemplo depende de la configuracion del
windows.
Alguna otra idea?
*TODO* depende de la configuración regional de Windows!
Public Function SoloNumeros(s As String) As Boolean
Dim i as Integer, ch As String
For i = 1 To Len(s)
ch = Mid(s, i, 1)
If ch < "0" Or ch > "9" Then
SoloNumeros = False
Exit Function
End If
Next
SoloNumeros = True
End Function
Puede ser un poco más complejo si esperas recibir enteros
negativos, o si
tienes que validar el rango (-32768..32767). Pero por ahi
van los tiros.
--
Salud!
Leonardo
[MS MVP - Visual Basic]
¡Adicto a .NET!
leonardo<arroba>mvps<punto>org
www.lazpurua.com
.
Victor Koch
2003-11-28 14:15:02 UTC
Permalink
No entendiste, el campo en donde lo tenes es una variable numerica o una
variable tipo string

--
Un saludo, Víctor Koch.


"Junior" <***@discussions.microsoft.com> escribi� en el mensaje news:07c801c3b52e$27100430$***@phx.gbl...
La idea es buena, pero si digito un numero como 1,7 me lo
acepta por la configuracion de la maquina, lo interpreta
como miles.

De modo que tu ejemplo depende de la configuracion del
windows.

Alguna otra idea?
-----Mensaje original-----
y=Fix(x)
if y<>x then
msgbox "no es entero"
else
msgbox "es entero"
endif
--
Un saludo, Víctor Koch.
Estoy intentando validar que el numero que viene en un
archivo es un numero entero, utilizo la utlidad isnumeric,
pero tambien acepta como numeros 2300,89 23.88.
Intenté buscar una funcion como isInteger, pero no existe,
alguna idea de como validarlo?
.
Continúe leyendo en narkive:
Loading...