Validar

Tengo un userform lleno de textboxs...
Estos textboxs trabajan con operaciones aritméticas...
El proceso corre bien con numeron enteros pero cuando se introducen decimales marca error...
¿Hay posibilidad de valorar estos textbox para que trabajen tanto con enteros como decimales?
1

1 respuesta

Respuesta
1
Si, si hay formar, todo esta en donde uses esos valores, los TextBox manejan texto, independientemente de lo que le metas, para ellos es texto, si este valor lo mandas a una variable de tipo númerica no te dice nada, siempre y cuando el valor sea correcto, una forma segura de validar esto, es con el siguiente código...
'Declaro mis variables que contendran los números
Dim intEntero As Integer 'Variable de tipo entero (solo enteros)
Dim sngSimple As Single 'Variable de tipo single (con decimales)
Dim strValor As String 'Variable de tipo texto
'Obtengo el valor del cuadro de texto y le quito los espacios
strValor = Trim ( txtNumero.Text)
'Verifico que sea un número
If IsNumeric(strValor) Then
'Verifico que no sea más grande que un entero
If Val(strValor)<35767 Then
'Si es entero lo convierto a valor y a entero
intEntero = Int(Val(strValor))
Else
'Si es más grande y tiene decimales, lo asigno al tipo de variable que si acepta decimales
sngSimple = Val(strValor)
End If
Else
MsgBox "El valor no es un número"
End If
En resumen, si usas variables de tipo Single (Simple) no tendrás problemas al asignarle un valor aunque sea en decimales, solo cuida que el valor pasado sea efectivamente un número.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas