Cuando creamos una estructura condicional de tipo IF ELSE en VBA para Microsoft Excel, es muy importante evaluar correctamente el valor del límite, para estar seguros de que se ejecuta el código correcto para este caso.
Para este ejemplo de la mayoría de edad se trata de evaluar correctamente el valor de 18 años.
Este es el código que usaremos:
Option Explicit
Sub condicional()
'Declaramos una variable numerica
Dim edad As Integer
edad = InputBox("Introduce tu edad:")
If edad > 18 Then
MsgBox ("Eres mayor de edad")
Else
MsgBox ("Eres menor de edad")
End If
End Sub
Aunque aparentemente el código es correcto cuando lo tengo esperemos que tiene un problema en la condición.
Es muy importante siempre evaluar el el valor límite de la condición.
En este caso se trata de evaluar la edad la cual se pasa de ser menor de edad al mayor.
Este valor es el 18 r introduciendo este valor deberíamos obtener como respuesta que es mayor de edad.
Cómo vemos no es así la condición que hemos usado es que fuera mayor que 18, pero realmente con 18 ya debería ser mayor de edad.
Por lo tanto esta condición es incorrecta.
Como solución podemos comparar edad con maior que 17.
Otra opción es evaluar si el valor es mayor o igual al límite.
En este caso es el que elegiremos.
En este caso el resultado es correcto.
Siempre es muy importante evaluar el correcto funcionamiento del valor límite, para asegurarse de que el código funciona correctamente.
No hay comentarios:
Publicar un comentario