Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/09/2008, 19:12
twelve
 
Fecha de Ingreso: diciembre-2007
Ubicación: Caracas - Venezuela
Mensajes: 32
Antigüedad: 16 años, 5 meses
Puntos: 1
Ayuda! Funcion para Validar Si es Numerico

Hola que tal....

Bueno el problema es el siguiente tengo un codigo que me valida si el texto ingresado es Numerico o no...Si no es numerico me lanza un mensaje de alerta para indicar que solo se aceptan datos numericos..y asi mismo borra el caracter no deseado o lo sustituye por "", luego si deseas ingresar de nuevo un numero simplemente es negado, es decir no lo ingresa sino lo remplaza de una vez por ""...El codigo me funciona perfecto cuando lo coloco directo...en el evento de Change(). Ahora bien quiero convertirlo en una funcion por que necesito utilizarlo de vez en cuando pero creo que todavia no entiendo como es en Visual Basic..

El código para convertirlo en función es (Original)

Private Sub txtCIPasaporte_Change()
Dim strCIPasaporteText As String, i As Integer
Dim RemplazoCIPasaporte As String


For i = 1 To Len(txtCIPasaporte.Text) Step 1
strCIPasaporteText = Mid(txtCIPasaporte.Text, i, 1)
If Not (IsNumeric(strCIPasaporteText)) Then
While MensajeDatosCaracterCIPasaporte = 0
MsgBox "Solo permiten datos numéricos en el campo (Cédula). Por favor verifique su entrada.", vbOKOnly + vbInformation, "Mensaje del Sistema..."
MensajeDatosCaracterCIPasaporte = MensajeDatosCaracterCIPasaporte + 1
Wend
RemplazoCIPasaporte = Replace(txtCIPasaporte.Text, strCIPasaporteText, "")
txtCIPasaporte.Text = RemplazoCIPasaporte
End If
Next

'Validación de los datos dentro del campo texto
' Esto permite comenzar con el tabulador en el
' último caracter escrito
txtCIPasaporte.Text = txtCIPasaporte.Text
a = Len(txtCIPasaporte.Text)
txtCIPasaporte.SelStart = a

Como dije quiero llevar este código a ser una función pero..tengo esto::(Funcion)


Public Function ValidarNumerico(Obj As String)
Dim Cont As Integer, Remplazo As String
Dim Str As String

For Cont = 1 To Len(Obj) Step 1
Str = Mid(oj, Cont, 1)
If Not (IsNumeric(Str)) Then
While MensajeDatosCaracterCIPasaporte = 0
MsgBox "Solo permiten datos numéricos en el campo (Cédula). Por favor verifique su entrada.", vbOKOnly + vbInformation, "Mensaje del Sistema..."
MensajeDatosCaracterCIPasaporte = MensajeDatosCaracterCIPasaporte + 1
Wend
Remplazo = Replace(Obj, Str, "")
Obj = Remplazo
End If
Next
Obj = Obj
a = Len(Obj)
Obj = a


Pero creo que no se como interactua el textBox o el txtCIPasaporte.text dentro de la funcion .

Function ValidarNumerico(Obj As String) 'Obj deberia ser el Texto del TextBox...


Gracias ..a todos