Tipo de datos booleanos de VBA (variable de atenuación)

Tipo de variable booleana

El tipo de datos booleano de VBA se utiliza para almacenar valores verdaderos o falsos. Verdadero también se puede representar por 1 y Falso por 0.

Para declarar una variable booleana, usa la declaración Dim (abreviatura de Dimension):

1 Dim blnA como booleano

Luego, para asignar un valor a una variable, simplemente usa el signo igual:

1 blnA = Verdadero

Cuando pones esto en un procedimiento, podría verse así:

123456789101112 Sub blnExample ()'declarar la variable booleanaDim blnA como booleano'ejecutar código para completar la variable; por lo general, el código es una declaración if o caseSi Rango ("A1")> 0 entoncesblnA = verdaderoDemásblnA = FalsoTerminara si'mostrar el cuadro de mensajeMsgBox "La prueba para ver si la celda tiene un valor mayor que 0 es" & blnAEnd Sub

Si ejecuta el código anterior, se mostrará el siguiente cuadro de mensaje.

Declarar variable booleana a nivel de módulo o global

En el ejemplo anterior, declaramos el Booleano variable dentro de un procedimiento. Las variables declaradas con un procedimiento solo se pueden usar dentro de ese procedimiento.

En su lugar, puede declarar variables booleanas a nivel de módulo o global.

Nivel de módulo

Tu declaras Nivel de módulo variables en la parte superior de los módulos de código con el Oscuro declaración.

Estas variables se pueden usar con cualquier procedimiento en ese módulo de código.

Nivel global

Tu tambien declaras Nivel global variables en la parte superior de los módulos de código. Sin embargo, en lugar de utilizar el Oscuro declaración, usaría la Público declaración para indicar que el Booleano La variable está disponible para ser utilizada en todo su proyecto VBA.

1 BlnA público como booleano

Si tuvieras que declarar el Booleano variable a nivel de módulo y luego intentar usarla en un módulo diferente, obtendría un error.

Sin embargo, si ha utilizado la palabra clave Public para declarar el Booleano variable, el error no ocurriría y el procedimiento se ejecutaría perfectamente.

Usando una variable booleana

Utiliza la variable booleana en comparación lógica. Estos se usan a menudo con declaraciones If para probar si una condición es Verdadera o Falsa como en el ejemplo anterior, o en una línea de código para aplicar una prueba lógica, tal vez para ver si un valor es mayor que otro.

12345678 Sub blnExample ()'declarar la variable booleanaDim blnA como booleano'prueba para ver si un número es mayor que el siguiente númeroblnA = 45> 68'mostrar el cuadro de mensajeMsgBox blnAEnd Sub

Si ejecuta el código anterior, obtendrá el siguiente cuadro de mensaje.

¡Porque, por supuesto, 45 no es mayor que 68!

Usar operadores booleanos

Como las variables booleanas se usan en la comparación lógica, podemos usar los operadores lógicos Y y O para probar y ver si más de una condición es verdadera o falsa.

Usando el operador AND

Podemos usar la función AND para ver si se cumplen AMBAS condiciones.

12345678 Sub blnExample ()'declarar la variable booleanaDim blnA como booleano'use el operador AND para probar y ver si ambas condiciones son verdaderasblnA = 10> 13 y 15> 12'mostrar el cuadro de mensajeMsgBox blnAEnd Sub

o podríamos ejecutar la misma prueba usando una declaración If:

123456789101112 Sub blnExample ()'declarar la variable booleanaDim blnA como booleano'use el operador AND para probar y ver si ambas condiciones son verdaderasSi 10> 13 y 15> 12 entoncesblnA = VerdaderoDemásblnA = FalsoTerminara si'mostrar el cuadro de mensajeMsgBox blnAEnd Sub

Ambos ejemplos anteriores volverían FALSO debido al hecho de que 10 es NO mayor de 13 - y AMBOS las condiciones deben ser Verdaderas para que el Booleano sea Verdadero.

Usando el operador OR

Podemos usar la función OR para ver si se cumple UNA DE las condiciones.

12345678 Sub blnExample ()'declarar la variable booleanaDim blnA como booleano'use el operador AND para probar y ver si ambas condiciones son verdaderasblnA = 10> 13 o 15> 12'mostrar el cuadro de mensajeMsgBox blnAEnd Sub

o podríamos ejecutar la misma prueba usando una declaración If:

123456789101112 Sub blnExample ()'declarar la variable booleanaDim blnA como booleano'use el operador AND para probar y ver si ambas condiciones son verdaderasSi 10> 13 O 15> 12, entoncesblnA = VerdaderoDemásblnA = FalsoTerminara si'mostrar el cuadro de mensajeMsgBox blnAEnd Sub

Estos ejemplos volverían CIERTO debido al hecho de que 10 NO es mayor que 13 PERO 15 ES mayor que 12 - ySÓLO UNO La condición debe ser Verdadera para que el booleano sea Verdadero.

Usar declaraciones If nos permite usar operadores más lógicos

Usando el operador NOT

También podemos usar el operador NOT con la variable booleana. El operador NOT niega el valor de la condición, por lo que si una condición es verdadera, el operador NOT devolverá falso.

12345678910111213141516 Sub FindDifferences ()'declarar variables de rangoDim rng1 como rangoDim rng2 como rango'activar la hoja unoHojas de trabajo ("Hoja1"). Activar'poblar los rangosEstablecer rng1 = Rango ("A3")Establecer rng2 = Rango ("B3")'use el operador NOT para ver si los valores son iguales o no.Si no rng1.Value = rng2.Value, entoncesMsgBox "Los valores de las celdas no son iguales"DemásMsgBox "Los valores de las celdas son iguales"Terminara siEnd Sub

Uso del operador lógico Xor

losXor El operador lógico se utiliza para comparar dos o más condiciones. Si una de las condiciones es verdadera, devolverá VERDADERO. Si hay 2 condiciones, y NINGUNAS son verdaderas o AMBAS son verdaderas, devolverá FALSO.

1234567891011121314151617 Sub blnExample ()'declarar los enterosDim intA como enteroDim intB como entero'declarar la variable booleanaDim blnResult como booleano'rellenar las variablesintA = 5intB = 10'comprobar para ver si uno es ciertoSi intA = 5 Xor intB = 5 EntoncesblnResult = VerdaderoDemásblnResult = FalsoTerminara siMsgBox blnResultEnd Sub

En el ejemplo anterior, como UNA de las condiciones es VERDADERA, el cuadro de mensaje volverá CIERTO.

1234567891011121314151617 Sub blnExample ()'declarar los enterosDim intA como enteroDim intB como entero'declarar la variable booleanaDim blnResult como booleano'rellenar las variablesintA = 5intB = 5'comprobar para ver si uno es ciertoSi intA = 5 Xor intB = 5 EntoncesblnResult = VerdaderoDemásblnResult = FalsoTerminara siMsgBox blnResultEnd Sub

Sin embargo, en el ejemplo anterior, como AMBAS condiciones son verdaderas, el cuadro de mensaje volverá FALSO.

1234567891011121314151617 Sub blnExample ()'declarar los enterosDim intA como enteroDim intB como entero'declarar la variable booleanaDim blnResult como booleano'rellenar las variablesintA = 6intB = 8'comprobar para ver si uno es ciertoSi intA = 5 Xor intB = 5 EntoncesblnResult = VerdaderoDemásblnResult = FalsoTerminara siMsgBox blnResultEnd Sub

y finalmente, como ambas condiciones son FALSAS, el cuadro de mensaje también devolverá FALSO.

Va a ayudar al desarrollo del sitio, compartir la página con sus amigos

wave wave wave wave wave