Saltar al contenido

Compruebe si un string la variable tiene un valor entero

Esta es la solución más exacta que encomtrarás brindar, pero primero estúdiala detenidamente y analiza si es compatible a tu proyecto.

Solución:

Un truco muy simple es intentar analizar el string como un entero. Si tiene éxito, es un número entero (sorpresa sorpresa).

Dim childAgeAsInt As Integer
If Integer.TryParse(childAge, childAgeAsInt) Then
    ' childAge successfully parsed as Integer
Else
    ' childAge is not an Integer
End If

Complementando la respuesta de Styxxy, si no necesita un resultado, simplemente reemplácelo por vbNull:

If Integer.TryParse(childAge, vbNull) Then

Puede realizar las dos pruebas siguientes para estar razonablemente seguro de que la entrada que obtiene es un número entero:

If IsNumeric(childAge) AndAlso (InStr(1, childAge, ".") <> 0) Then
    fmSecA2 = "Wow! You are already " & childAge & " years old? You're growing to be a big " & childGender & " now! "
    If childAge < 0 OrElse childAge > 150 Then
        fmSecA2 = "I don't believe it's possible to be" & childAge & " years old..."
    End If
Else
    fmSecA2 = "Erm, I couldn't really understand your age. Are you making this up? Ho ho ho!"

La función InStr devuelve cero si no encuentra el string que se está buscando, por lo que al combinar esa prueba con IsNumeric, también descarta la posibilidad de que se haya ingresado algún tipo de datos de punto flotante.

Comentarios y valoraciones

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *