Como Utilizar función IF en VBA

función IF en VBA

La siguiente publicación vamos a aprender cómo utilizar la función IF en VBA o funcion SI en VBA o Macro de Excel.

Las funciones de lógicas podemos utilizarla para que nuestro código pueda realizar acciones basadas en condiciones específicas, como por ejemplo, organizar información en nuestra base de datos basada en alguna condición específica, es decir, almacena el producto A cuando la celda A1 cuando la entrada sea 1 o almacena el producto B cuando la celda A1 cuando la entrada sea 2 o almacena el producto C cuando la celda A1 cuando la entrada sea 3,…

En este artículo haremos 3 casos o condiciones posible utilizado la función IF en VBA o Macro en Excel. Los tres casos que vamos a tratar serán los siguientes:

  • Solo una condición para función IF.
  • Dos condiciones para función IF.
  • Múltiples condiciones para función IF.

Nota: las instrucciones en el VBA o Macro debe darse en inglés sin importar el idioma de configuración del Office o de Windows.

Identificar una celada en Macro Excel

Para identificar una celda utilizando el VBA tenemos 2 propiedades básicas: Cells y Range.

Usando Cells

Para utilizar Cells es necesario ubicar la numeración de cada celda en el eje Y (vertical) para el primer valor y X (horizontal) para el segundo valor, es decir la celda A1 ceras (1,1), B2 (2,1), C3 (3,3).

Ubicar celdas VBA
Identificar celdas con función Cells

Usando Range

Este caso es más fácil, ya que, solo tiene que colocar las celdas según la ubicación natural de Excel, A1, A2, A3…. Solo debes colocar en paréntesis acompañado de un par de comillas, (“A1”), (“B2”)…

Habido explicado la teoría básica necesaria para utilizar la función IF en VBA es momento de iniciar con el proceso.

Usar función IF en VBA

Solo una condición para IF

En este caso solo utilizaremos la celda A1 como base y la celda A2 para mostrar un resultado.

Ejemplo 1-1: SI A1 es igual a 1, A2 cera igual a 2.

Sub funcion_if_1()
If Cells(1, 1) = 1 Then
Cells(1, 2) = 2
End If
End Sub

Ejemplo 2-1: SI A1 es igual a 1, B2 cambiará el color a rojo (255, 0, 0).

Sub funcion_if_1()
If Cells(1, 1) = 1 Then
Cells(2, 1).Interior.Color = RGB(255, 0, 0)End If
End If
End Sub

Para los colores es necesario utilizar formato RGB.

Dos condiciones para IF

En este caso solo utilizaremos la celda A1 como base y la celda A2 para mostrar un resultado.

Ejemplo 2-1: SI A1 es igual a 1, A2 cera igual a 2 y de caso contrario cera igual a 3.

Sub funcion_if_2()
If Range("A1") = 1 Then
Range("A2") = 2

Else
Range("A2") = 3
End If
End Sub

Ejemplo 2-2: SI A1 es igual a 1, B2 cambiará el color a rojo (255, 0, 0), de caso contrario cambiará a verde (0,176, 80)

Sub funcion_if_2()
If Range("A1") = 1 Then
Range("B2").Interior.Color = RGB(255, 0, 0)

Else
Range("B2").Interior.Color = RGB(0, 176, 80)
End If
End Sub

Múltiples condiciones para función IF en VBA

Las múltiples condiciones equivales a utilizar la Función «SI.CONJUNTO» en muestra, hoja o libro de Excel.

Para este caso utilizaremos la propiedad ElseIF para dar múltiples condiciones.

Ejemplo 3-1:

  • SI A1 es igual a 1, A2 cera igual a 2.
  • SI A1 es igual a 2, A2 cera igual a 3.
  • SI A1 es igual a 3, A2 cera igual a 3.
Sub funcion_if_3()

If Range("A1") = 1 Then
Range("A2") = 2

ElseIf Range("A1") = 2 Then
Range("A2") = 3

ElseIf Range("A1") = 3 Then
Range("A2") = 4


End If

End Sub

Ejemplo 3-2:

  • SI A1 es igual a 1, B2 cambiará el color a rojo (255, 0, 0).
  • SI A1 es igual a 2, B2 cambiará el color a verde (0,176, 80).
  • SI A1 es igual a 3, B2 cambiará el color a azul (0,176, 240).
Sub funcion_if_3()

If Range("A1") = 1 Then
Range("B2").Interior.Color = RGB(255, 0, 0)

ElseIf Range("A1") = 2 Then
Range("B2").Interior.Color = RGB(0, 176, 80)

ElseIf Range("A1") = 3 Then
Range("B2").Interior.Color = RGB(0, 176, 240)


End If

End Sub

Con estos tres casos para la función IF en VBA ya podrás realizar cualquier caso de función lógica de SI en utilizando códigos Macro en Excel, sin importar la versión de office que utilices.

Si necesitar un paquete de Office original a muy bajo costo, Aquí te dejo un enlace a una publicación que te aplicara conde adquirirlo. ? Comprar licencia para Office.

Si quieres aprender como hacer una base de datos en excel visita el siguiente enlace del blog: ? Hacer una base de datos en Excel

Publicaciones Similares