En este artículo, vamos a ver cómo usar la declaración If Else If en Excel VBA usando un ejemplo adecuado.
Implementación:
En las pestañas de Microsoft Excel, seleccione la pestaña Desarrollador . Inicialmente, es posible que la pestaña Desarrollador no esté disponible.
La pestaña Desarrollador se puede habilitar fácilmente mediante un proceso de dos pasos:
- Haga clic derecho en cualquiera de las pestañas existentes en la parte superior de la ventana de Excel.
- Ahora seleccione Personalizar la cinta en el menú desplegable.
- En el cuadro de opciones de Excel, marque la casilla Desarrollador para habilitarlo y haga clic en Aceptar.
- Ahora, la pestaña Desarrollador está visible.
Ahora haga clic en la opción Visual Basic en la pestaña Desarrollador y cree un nuevo módulo para escribir el programa usando la instrucción Seleccionar caso.
Developer -> Visual Basic -> Tools -> Macros
- Ahora crea una macro y dale un nombre adecuado.
- Esto abrirá la ventana del Editor donde puede escribir el código.
IF ELSE IF declaración
La sintaxis es:
If condition1/expression1 Then Code Block 1 Else If condition2/expression2 Then Code Block 2 Else Code Block 3 End If
En esto inicialmente, se ejecuta la condición If y si es VERDADERO entonces el bloque de código 1 se ejecutará y el programa terminará. Ahora, si la condición 1 se vuelve FALSA, entonces la condición 2 dentro de Else IF funcionará, y si es VERDADERO, el bloque de código 2 se ejecutará y el programa terminará. Si las dos condiciones anteriores son falsas, Else funcionará y se ejecutará Code Block 3.
Diagrama de flujo :
Ejemplo: supongamos que en una empresa necesitamos encontrar el salario máximo de tres departamentos: recursos humanos, finanzas y TI.
Código:
Sub Find_Max() 'Declaring the variables Dim HR_Sal As Integer Dim Fin_Sal As Integer Dim IT_Sal As Integer 'Asking the users to enter the salary HR_Sal = InputBox("Enter HR department salary:") Fin_Sal = InputBox("Enter Finance department salary:") IT_Sal = InputBox("Enter IT department salary:") 'Conditions to find the maximum salary of three departments If HR_Sal > Fin_Sal And HR_Sal > IT_Sal Then MsgBox "HR department has maximum salary" 'The previous condition fails then the below statement executes ElseIf Fin_Sal > IT_Sal Then MsgBox "Finance department has maximum salary" 'The previous two conditions fail then the below statement executes Else MsgBox "IT department has maximum salary" End If End Sub
Aquí, primero verificamos si el salario de recursos humanos es mayor que el de los otros dos departamentos. Si es VERDADERO, definitivamente el departamento de recursos humanos tiene el salario máximo y se ejecuta el código dentro de IF. Si esto no es CIERTO, significa que el salario del departamento de recursos humanos no es el máximo y, a continuación, en la condición Else If, debemos comparar entre TI y Finanzas y ver cuál es el máximo. De esta forma se ejecuta If Else If. Si ninguna de las condiciones anteriores es VERDADERA, entonces se ejecutará el código dentro de Else.
AND es un operador lógico que da el resultado como valor VERDADERO si y solo si ambas expresiones asociadas con este operador son VERDADERAS.
Caso 1 :
Las entradas del usuario son:
La salida es:
Caso 2:
Las entradas del usuario son:
La salida es:
Caso 3:
Las entradas del usuario son:
La salida es:
Publicación traducida automáticamente
Artículo escrito por rishabhchakrabortygfg y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA