Operadores de Comparación en VBA

Introducción teórica y ejemplos prácticos para evaluar condiciones en Excel Visual Basic.

1. ¿Qué son los Operadores de Comparación?

Los operadores de comparación nos permiten contrastar dos valores o variables. El resultado de realizar una comparación en VBA siempre es un valor lógico (booleano): únicamente puede ser verdadero (True) o falso (False).

Preguntas y Respuestas

Un programador escribe un programa y el programa hace preguntas. Una computadora ejecuta el programa y proporciona las respuestas. El programa debe ser capaz de reaccionar de acuerdo con las respuestas recibidas. Afortunadamente, las computadoras solo conocen dos tipos de respuestas:

Operador Significado Ejemplo en VBA Resultado
= Igual a 5 = 5 True
<> Diferente de (Distinto) 5 <> 3 True
> Mayor que 10 > 15 False
< Menor que 8 < 20 True
>= Mayor o igual que 15 >= 15 True
<= Menor o igual que 12 <= 10 False
' Ejemplo básico en VBA
Dim Resultado As Boolean
Dim Nota As Integer

Nota = 14
Resultado = (Nota >= 11) ' Guardará True porque 14 es mayor o igual a 11
Range("B2").Value = Resultado

2. Reglas de Precedencia en VBA

Cuando una expresión combina varios operadores, VBA los evalúa en un orden estrictamente definido (de arriba a abajo según la tabla). Si hay varios operadores con el mismo nivel de prioridad en la misma línea, se evalúan de izquierda a derecha.

Nota clave: Los operadores de comparación siempre se evalúan después de todos los operadores aritméticos y todos tienen la misma prioridad entre sí.

Nivel Categoría Operador / Símbolo Descripción / Operación
0 Agrupación ( ) Paréntesis (alteran el orden natural y se resuelven primero)
1 Aritmético ^ Exponenciación (Potencia)
2 Aritmético - Negación (Signo negativo unario, ej. -5)
3 Aritmético * , / Multiplicación y División común
4 Aritmético \ División entera (descarta los decimales)
5 Aritmético Mod Módulo o Residuo de una división entera
6 Aritmético + , - Suma y Resta binarias
7 Comparación = , <> , < , > , <= , >= Operadores de comparación (Todos tienen el mismo nivel)

2. Ejemplo Explicativo paso a paso

Analicemos cómo evalúa VBA la siguiente expresión combinada:

Dim Resultado As Boolean
Resultado = 10 + 2 * 3 ^ 2 > 20 Mod 7

Paso a paso de la resolución interna de VBA:

  1. Exponente (^): 3 ^ 2 da 910 + 2 * 9 > 20 Mod 7
  2. Multiplicación (*): 2 * 9 da 1810 + 18 > 20 Mod 7
  3. Módulo (Mod): 20 Mod 7 da 610 + 18 > 6
  4. Suma (+): 10 + 18 da 2828 > 6
  5. Comparación (>): ¿Es 28 mayor que 6? → True

2. Ejercicios Prácticos de Aplicación

A continuación, se presentan dos casos prácticos para aplicar comparaciones numéricas directamente en celdas de Excel.

Ejercicio 1: Verificación de Mayoría de Edad Sub EjercicioComp1()

Problema: Un sistema requiere verificar si un usuario es mayor de edad. Compara si la edad ingresada en la celda B1 es mayor o igual a 18 años e imprime el resultado lógico (True o False) en la celda B2.

AB
1Edad del Usuario16
2¿Es Mayor de Edad? (>= 18)?
Ejercicio 2: Control de Stock Mínimo Sub EjercicioComp2()

Problema: En un almacén se necesita emitir una alerta si el inventario actual de un producto ha caído por debajo del stock mínimo recomendado. Compara si el stock en B5 es menor que el stock mínimo en B6 y muestra el resultado booleano en B7.

AB
5Stock Actual8
6Stock Mínimo Requerido15
7¿Requiere Reabastecer? (<)?