Visual Basic Foro

Programación => Visual Basic 6 => Mensaje iniciado por: zxs23 en Septiembre 01, 2014, 01:08:52 am

Título: Terminar sub cuando el valor sea cero o nulo
Publicado por: zxs23 en Septiembre 01, 2014, 01:08:52 am
Tengo este dilema.
Anteriormente mi textbox solo permitia enteros ahora permitira decimales pero para continuar ejecutando el codigo el valor del textbox no debe ser cero ni estar en blanco, mas o menos tengo esto pero cuando ingreso 0.0 ó 0.000 ó .00, etc, etc me ejecuta la funcion y tira error, como podria solucionarlo.
Código: (VB) [Seleccionar]
If Text1 = "" Or Text1 = "0" Or Text1 = "," Or Text1 = "." Then
    exit sub
else
    'ejecuta funcion
end if
Título: Re:Terminar sub cuando el valor sea cero o nulo
Publicado por: Albertomi en Septiembre 01, 2014, 06:11:13 am
Estimado zxs23

 
Prueba con el siguiente código, en donde primero evaluamos si el número es un verdadero número para ello uso la funcion IsTrueNumber en donde nos valdremos de error para la evaluación, no hago uso de la funcion de VB IsNumeric porque no evalúa adecuadamente las cantidades numéricas. Luego que se ha evaluado como un numero excluimos el Cero. 
Private Sub Command1_Click()
  ValidateText Text1.Text
End Sub
 
 
Public Sub ValidateText(ByVal Value As String)
  If IsTrueNumber(Value) Then
    If Value = "0" Then    ' Excluimos el Cero
      Debug.Print "Bay"
    Else
      Debug.Print "BINGO"
    End If
  Else
    Debug.Print "Bay"
  End If
End Sub
 

Public Function IsTrueNumber(ByRef Value As String) As Boolean
  On Error GoTo ErrorNumber
  Value = Value + 0
  IsTrueNumber = True
 
  Exit Function
ErrorNumber:
  'Nothing
End Function

 
Saludos, desde algún lugar de Lima-Perú
Título: Re:Terminar sub cuando el valor sea cero o nulo
Publicado por: zxs23 en Septiembre 03, 2014, 05:55:47 pm
Gracias por el codigo albertomi, saludos