Validar un Texbox

Jorge L?
13 de Noviembre del 2002
hola a todos....como hago para validar que en un texbox, solo acepte numeros...es decir el usuario introduce los caracteres y luego al pulsar un boton, le diga que solo debe introducir numeros no letras....gracias

Santos Pairazam?
13 de Noviembre del 2002
Puedes hacer de estas dos formas
en el evento keypress del textbox pones esto
KeyAscii = IIf(Val(InStr("1234567890", Chr(KeyAscii))) > 0, KeyAscii, 0)
o en el evento click del command button
Private Sub Command1_Click()
If IsNumeric(Text1.Text) Then
MsgBox ("numérico")
'aqui haces cuando se cumpla que el dato es numérico
End If

webJose
13 de Noviembre del 2002
Esta es una mejor manera. Dicen que en VB6 inclusive detiene el pegado de texto.

Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long

Private Const ES_NUMBER As Long = &H2000&
Private Const GWL_STYLE As Long = (-16)

Private Sub Form_Load()

Dim lEstilo As Long

lEstilo = GetWindowLong(<nombre de textbox>.hwnd, GWL_STYLE)
lEstilo = lEstilo Or ES_NUMBER
SetWindowLong <nombre de textbox>.hwnd, GWL_STYLE, lEstilo

En VB5, esto no detiene el pegado de texto, pero es mucho mejor que monitorear el KeyPress.