control de letras y numeros
hola chic@s:
necesito saber como controlar que en un campo de numeros no se puedan meter letras y viceversa
sin mas un saludo
y gracias!
necesito saber como controlar que en un campo de numeros no se puedan meter letras y viceversa
sin mas un saludo
y gracias!
Hola,
se me ocurre una idea un poco cutre pero que puede funcionar.
Dim sonLetras as Boolean
Dim sonNumeros as Boolean
sonLetras = Letras
sonNumeros = Numeros
if sonLetras then
' Estamos seguros de que text1 contiene letras
endif
if sonNumeros then
' Estamos seguros de que text1 contiene numeros
endif
Function Letras() as Boolean
dim ok as string
on error goto error_letras
Letras = False
ok = CStr(Text1.Text)
Letras = True
Exit Function
'ERROR
error_letras:
Letras = false
End Function
Function Numeros() as Boolean
dim ok as string
on error goto error_numeros
Numeros = False
ok = CInt(Text1.Text)
Numeros = True
Exit Function
'ERROR
error_numeros:
Numeros = false
End Function
Y lo almodas como quieras pasándole como parámetro a las funciones el contenido del campo que quieras evaluar, etc...
Suerte
Un saludo
sdemingo
se me ocurre una idea un poco cutre pero que puede funcionar.
Dim sonLetras as Boolean
Dim sonNumeros as Boolean
sonLetras = Letras
sonNumeros = Numeros
if sonLetras then
' Estamos seguros de que text1 contiene letras
endif
if sonNumeros then
' Estamos seguros de que text1 contiene numeros
endif
Function Letras() as Boolean
dim ok as string
on error goto error_letras
Letras = False
ok = CStr(Text1.Text)
Letras = True
Exit Function
'ERROR
error_letras:
Letras = false
End Function
Function Numeros() as Boolean
dim ok as string
on error goto error_numeros
Numeros = False
ok = CInt(Text1.Text)
Numeros = True
Exit Function
'ERROR
error_numeros:
Numeros = false
End Function
Y lo almodas como quieras pasándole como parámetro a las funciones el contenido del campo que quieras evaluar, etc...
Suerte
Un saludo
sdemingo
'
'
' ----------------- e s N u m e r o ( ) ----------------
'
'
Public Sub esNumero(KeyAscii As Integer)
If Chr(KeyAscii) >= "0" And Chr(KeyAscii) <= "9" Then
Rem OK
ElseIf KeyAscii = 8 Then
Rem OK
ElseIf KeyAscii = 13 Then
KeyAscii = 0
SendKeys "{TAB}"
Else
KeyAscii = 0
Beep
End If
End Sub
'
'
' ----------------- e s L e t r a ( ) ----------------
'
'
Public Sub esLetra(KeyAscii As Integer)
If UCase(Chr(KeyAscii)) >= "A" And UCase(Chr(KeyAscii)) <= "Z" Then
Rem OK
ElseIf KeyAscii = 8 Then
Rem OK
ElseIf Chr(KeyAscii) = Space(1) Then
Rem OK
ElseIf KeyAscii = 13 Then
KeyAscii = 0
SendKeys "{TAB}"
Else
KeyAscii = 0
Beep
End If
End Sub
'
' ----------------- e s N u m e r o ( ) ----------------
'
'
Public Sub esNumero(KeyAscii As Integer)
If Chr(KeyAscii) >= "0" And Chr(KeyAscii) <= "9" Then
Rem OK
ElseIf KeyAscii = 8 Then
Rem OK
ElseIf KeyAscii = 13 Then
KeyAscii = 0
SendKeys "{TAB}"
Else
KeyAscii = 0
Beep
End If
End Sub
'
'
' ----------------- e s L e t r a ( ) ----------------
'
'
Public Sub esLetra(KeyAscii As Integer)
If UCase(Chr(KeyAscii)) >= "A" And UCase(Chr(KeyAscii)) <= "Z" Then
Rem OK
ElseIf KeyAscii = 8 Then
Rem OK
ElseIf Chr(KeyAscii) = Space(1) Then
Rem OK
ElseIf KeyAscii = 13 Then
KeyAscii = 0
SendKeys "{TAB}"
Else
KeyAscii = 0
Beep
End If
End Sub