VBA le permite utilizar operadores de comparación para comparar valores. Al utilizar estos operadores, puede comparar valores y devolver un valor booleano verdadero o falso como resultado.
La lista de los principales operadores de comparación en VBA
Primero, mostraremos la lista de operadores de comparación que se pueden usar en el código VBA:
Operador de comparación | Explicación |
= |
Igual a |
No igual a |
|
> |
Mas grande que |
>= |
Mayor qué o igual a |
< |
Menos que |
<= |
Menos que o igual a |
Igual a
los Igual a El operador comprueba si dos valores son iguales y devuelve Verdadero o Falso. Aquí está el código de ejemplo:
123456789101112 | Dim intA como enteroDim intB como enteroDim blnResult como booleanointA = 5intB = 5Si intA = intB EntoncesblnResult = VerdaderoDemásblnResult = FalsoTerminara si |
En este ejemplo, queremos comprobar si intA es igual a intB. Si esto es cierto, el valor de Boolean blnResult será Verdadero, de lo contrario, será Falso.
Primero, establecemos valores de intA y intB al 5:
12 | intA = 5intB = 5 |
Después de eso, usamos el = operador en la sentencia If para comprobar si los valores de intA y intB son iguales:
12345 | Si intA = intB entoncesblnResult = VerdaderoDemásblnResult = FalsoTerminara si |
Ambas variables son iguales a 5, por lo tanto el blnResult devuelve True:
Imagen 1. Uso del operador Igual a
No igual a
los No Igual a El operador comprueba si dos valores no son iguales y devuelve Verdadero o Falso. Aquí está el código de ejemplo:
Se ha producido un error. Por favor, inténtelo de nuevo más tarde. |
En este ejemplo, queremos comprobar si intA no es igual a intB. Si esto es cierto, el valor de Boolean blnResult será Verdadero, de lo contrario, será Falso.
Usamos el operador en la sentencia If para comprobar si los valores de intA y intB son diferentes:
12345 | Si intA intB EntoncesblnResult = VerdaderoDemásblnResult = FalsoTerminara si |
El valor de intA es 5 y el valor de intB es 6, las variables no son iguales, por lo tanto el blnResult devuelve True:
Imagen 2. Uso del operador No es igual a
Mas grande que
los Mas grande que El operador comprueba si el primer valor es mayor que el segundo y devuelve Verdadero o Falso. Aquí está el código de ejemplo:
123456789101112 | Dim intA como enteroDim intB como enteroDim blnResult como booleanointA = 6intB = 5Si intA> intB EntoncesblnResult = VerdaderoDemásblnResult = FalsoTerminara si |
En este ejemplo, queremos comprobar si intA es mayor que intB. Si esto es cierto, el valor de Boolean blnResult será Verdadero, de lo contrario, será Falso.
Además, utilizamos el > operador en la sentencia If para comprobar si el valor de intA es mayor que intB:
12345 | Si intA> intB EntoncesblnResult = VerdaderoDemásblnResult = FalsoTerminara si |
En conclusión, comointA es mayor que intB, los blnResult devuelve True:
Imagen 3. Uso del operador Mayor que
Mayor qué o igual a
los Mayor qué o igual a El operador comprueba si el primer valor es mayor o igual que el segundo valor y devuelve Verdadero o Falso. Aquí está el código de ejemplo:
123456789101112 | Dim intA como enteroDim intB como enteroDim blnResult como booleanointA = 5intB = 5Si intA> = intB EntoncesblnResult = VerdaderoDemásblnResult = FalsoTerminara si |
En este ejemplo, queremos comprobar si intA es mayor o igual a intB. Si esto es cierto, el valor de Boolean blnResult será Verdadero, de lo contrario, será Falso.
Usamos el>= operador en la sentencia If para comprobar si el valor de intA es mayor o igual a intB:
12345 | Si intA> = intB EntoncesblnResult = VerdaderoDemásblnResult = FalsoTerminara si |
En conclusión, como ambas variables son iguales a 5, el blnResult devuelve True:
Imagen 4. Uso del operador Mayor o igual a
Menos que
los Menos que El operador comprueba si el primer valor es menor que el segundo valor y devuelve Verdadero o Falso. Aquí está el código de ejemplo:
123456789101112 | Dim intA como enteroDim intB como enteroDim blnResult como booleanointA = 5intB = 6Si intA <intB EntoncesblnResult = VerdaderoDemásblnResult = FalsoTerminara si |
En este ejemplo, queremos comprobar si intA es menos que intB. Si esto es cierto, el valor de Boolean blnResult será Verdadero, de lo contrario, será Falso.
Usamos el < operador en la sentencia If para comprobar si el valor de intA es menos que intB:
12345 | Si intA <intB EntoncesblnResult = VerdaderoDemásblnResult = FalsoTerminara si |
Como intA es menos que intB, los blnResult devuelve True:
Imagen 5. Uso del operador Menor que
Menos que o igual a
los Menor que o Igual a El operador comprueba si el primer valor es menor o igual y devuelve Verdadero o Falso. Aquí está el código de ejemplo:
123456789101112 | Dim intA como enteroDim intB como enteroDim blnResult como booleanointA = 5intB = 5Si intA <= intB EntoncesblnResult = VerdaderoDemásblnResult = FalsoTerminara si |
En este ejemplo, queremos comprobar si intA es menor o igual que intB. Si esto es cierto, el valor de Boolean blnResult será Verdadero, de lo contrario, será Falso.
Usamos el <= operador en la sentencia If para comprobar si el valor de intA es menor o igual que intB:
12345 | Si intA <= intB EntoncesblnResult = VerdaderoDemásblnResult = FalsoTerminara si |
En conclusión, como ambas variables son iguales a 5, el blnResult devuelve True:
Imagen 6. Uso del operador Menor o igual a
Es operador
El operador Is prueba si dos variables de objeto contienen el mismo objeto:
12345678910111213 | Sub CompareObjects ()Dim ws1 como hoja de trabajo, ws2 como hoja de trabajoEstablecer ws1 = Hojas ("Hoja1")Establecer ws2 = Hojas ("Hoja2")Si ws1 es ws2 entoncesMsgBox "Mismo WS"DemásMsgBox "Diferentes WS"Terminara siEnd Sub |
Como operador
El operador Like se puede utilizar para buscar coincidencias de texto inexactas. Este ejemplo probará si una cadena comienza con "Sr."
1234567891011121314 | Sub LikeDemo ()Dim strName como cadenaDim blnResult como booleanostrName = "Sr. Michael James"Si strName como "Mr *", entoncesblnResult = VerdaderoDemásblnResult = FalsoTerminara siEnd Sub |
Si desea aprender a comparar cadenas, haga clic aquí: VBA Compare Strings - StrComp
Si desea aprender a usar los operadores de comparación, haga clic aquí: Operadores lógicos de VBA