Programación General > Visual Basic para principiantes
Que Hace Esto,,?
(1/1)
ferhn:
Hola soy nuevo programando y no entiendo completamnete q hacen estos if:
If InStr(1, txtHora(Index), ".") > 0 Then
KeyAscii = 0
End If
If Not IsNumeric(Chr(KeyAscii)) Then
KeyAscii = 0
End If
RadicalEd:
Lo que hace el InStr es buscar un cadena dentro de una cadena y devolver su posición, entonces lo que hace es:
Si dentro del textHora se encuentra el caracter '.' comenzando desde la primera posición y esto es mayor de 0 a la variable KeyAscii asignele 0
El segundo, como primera está negando el valor retornado por la expresión IsNumeric, la función chr devuelve el caracter ASCII entregado por el entero dentro de su función.
Nebire:
--- Citar ---If Not IsNumeric(Chr(KeyAscii)) Then
KeyAscii = 0
End If
--- Fin de la cita ---
En la 2ª parte le está diciendo que si 'KeyAscii' no es un número, se le asigne el valor 0.
Son 3 funciones anidadas dentro de un condicional. Se debe analizar siempre por el de más adentro:
chr(nº) = dame el carácter que corresponde a este nº
isnumeric(caracter) = es un número el caracter ?
not isnumeric() = NO es un número el caracter ?
por tanto:
if ..... then = SI (no(es un número(el caracter nº(KeyAscii)))) LUEGO
ferhn:
Muchas Gracias...
Navegación
Ir a la versión completa