Función VBA AND

Excel VBA Y función

Y es una función lógica y un operador lógico, lo que significa que si se cumplen todas las condiciones proporcionadas en esta función, solo tendremos el resultado verdadero, mientras que si alguna de las condiciones falla, la salida se devuelve como falsa, tenemos comando AND incorporado en VBA para usar.

Espero que haya leído nuestro artículo sobre "VBA OR" y "VBA IF OR". Esta función es exactamente lo opuesto a la función OR. En la función OR, necesitábamos que se cumpliera cualquiera de las condiciones lógicas proporcionadas para obtener el resultado como VERDADERO. Pero en la función AND es todo lo contrario. Para obtener el resultado de TRUE, se deben cumplir todas las pruebas lógicas proporcionadas en Excel.

Ok, mira la sintaxis de la función AND en Excel.

[Prueba lógica] Y [Prueba lógica] Y [Prueba lógica]

En lo anterior, tengo dos puntajes de prueba de 600.

En la columna de resultados, necesito obtener el resultado como VERDADERO si la puntuación de ambas pruebas es mayor que igual a 250.

Mira la imagen de abajo.

Cuando aplicamos la función lógica Y obtenemos los resultados. En las celdas C4 y C5 obtuvimos el resultado como VERDADERO porque las puntuaciones de la Prueba 1 y la Prueba 2 son mayores o iguales que 250.

Mire la celda C6 aquí, tenemos FALSO a pesar de que la puntuación de la Prueba 2 es igual a 250. Esto se debe a que en la Prueba 1 la puntuación es solo 179.

Ejemplos para usar VBA y función

Puede descargar esta plantilla de VBA Y Excel aquí - Plantilla de VBA Y Excel

Ejemplo 1

Por ejemplo, probaremos los números aquí, ya sea 25> = 20 y 30 <= 31.

Paso 1: Declare la variable como String.

Código:

 Sub AND_Example1 () Dim K As String End Sub 

Paso 2: Para la variable “k” asignaremos el valor aplicando la función AND.

Código:

 Sub AND_Example1 () Dim K As String K = End Sub 

Paso 3: proporcione la primera condición como 25> = 20.

Código:

 Sub AND_Example1 () Dim K As String K = 25> = 20 End Sub 

Paso 4: Ahora abra la función Y y proporcione la segunda prueba lógica, es decir, 30 <= 29.

Código:

 Sub AND_Example1 () Dim K As String K = 25> = 20 And 30 <= 29 End Sub 

Paso 5: Ahora muestre el resultado de la variable "k" en el cuadro de mensaje en VBA.

Código:

 Sub AND_Example1 () Dim K As String K = 25> = 20 And 30 <= 29 MsgBox K End Sub 

Ejecute la macro para ver cuál es el resultado.

Obtuvimos el resultado como FALSO porque de las dos condiciones aplicadas, la primera condición 25> = 20, esta condición se cumple, por lo que el resultado es VERDADERO y la segunda condición 30 <= 29, el resultado no se satisface es FALSO. Para obtener el resultado como VERDADERO, deben cumplirse ambas condiciones.

Ejemplo # 2

Ahora cambiaré la prueba lógica a "100> 95 Y 100 <200"

Código:

 Sub AND_Example2 () Dim k As String k = 100> 95 And 100 <200 MsgBox k End Sub 

Ejecute el código para ver el resultado.

Aquí obtuvimos TRUE como resultado porque

Primera prueba lógica: 100> 95 = VERDADERO

2da prueba lógica: 100 <200 = VERDADERO

Dado que obtuvimos los resultados VERDADEROS para ambas pruebas lógicas, nuestro resultado final fue VERDADERO.

Ejemplo # 3

Ahora veremos los datos de la hoja de trabajo. Utilice los datos que hemos utilizado para mostrar el ejemplo de la función Y de Excel.

Aquí la condición es Puntaje de prueba 1> = 250 Y Puntaje de prueba 2> = 250 .

Dado que tenemos más de una celda de datos, necesitamos usar bucles para evitar escribir líneas de códigos innecesarias y que consumen mucho tiempo. He escrito el siguiente código para usted, la fórmula y la lógica es lo mismo, lo único que he usado es "VBA para el siguiente bucle".

Código:

 Sub AND_Example3 () Dim k As Integer For k = 2 To 6 Cells (k, 3) .Value = Cells (k, 1)> = 250 And Cells (k, 2)> = 250 Siguiente k End Sub 

Esto dará el resultado exactamente igual que nuestra función de hoja de trabajo, pero no obtendremos ninguna fórmula, solo obtendremos resultados.

De esta manera, podemos aplicar la función lógica AND para probar múltiples condiciones que deben ser VERDADERAS para llegar a los resultados deseados.

Esto funciona completamente de manera opuesta a la función OR, donde OR requiere que cualquiera de las condiciones proporcionadas sea VERDADERO para obtener los resultados, pero Y requiere un resultado del 100% en una prueba lógica para obtener los resultados.