VBA І Функція | Як використовувати І логічний оператор у VBA?

Excel VBA І функція

І є логічною функцією, а також логічним оператором, що означає, що якщо всі умови, передбачені цією функцією, виконуються, тоді тільки ми будемо мати справжній результат, тоді як якщо будь-яка з умов не вдається, вихід повертається як помилковий вбудована І команда у VBA для використання.

Сподіваюсь, ви переглянули нашу статтю про “VBA АБО” та “VBA АБО”. Ця функція прямо протилежна функції АБО. У функції АБО нам потрібен будь-який із наданих логічних умов, щоб отримати результат як TRUE. Але у функції AND все навпаки. Для того, щоб отримати результат TRUE, необхідно виконати всі подані логічні тести в Excel.

Гаразд, подивіться на синтаксис функції AND в Excel.

[Логічний тест] І [Логічний тест] І [Логічний тест]

У наведеному вище я маю дві оцінки з 600.

У стовпці результатів мені потрібно отримати результат як TRUE, якщо оцінка обох тестів перевищує 250.

Подивіться на зображення нижче.

Коли ми застосовуємо логічну функцію І ми отримали результати. У клітинках C4 і C5 ми отримали результат як ІСТИНА, оскільки оцінки 1 та 2 тест більші або дорівнюють 250.

Подивіться на клітинку С6 тут, ми отримали FALSE, хоча оцінка тесту 2 дорівнює 250. Це тому, що в тесті 1 оцінка становить лише 179.

Приклади використання VBA та функцій

Завантажити цей шаблон VBA І Excel можна тут - Шаблон VBA І Excel

Приклад №1

Наприклад, ми перевіримо тут цифри, чи є 25> = 20 та 30 <= 31.

Крок 1: Оголосіть змінну як String.

Код:

 Sub AND_Example1 () Dim K як рядок End End 

Крок 2: Для змінної "k" ми будемо призначати значення, застосовуючи функцію AND.

Код:

 Sub AND_Example1 () Dim K як рядок K = End Sub 

Крок 3: Укажіть першу умову як 25> = 20.

Код:

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

Крок 4: Тепер відкрийте функцію AND та поставте другий логічний тест, тобто 30 <= 29.

Код:

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

Крок 5: Тепер покажіть результат змінної “k” у вікні повідомлення у VBA.

Код:

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

Запустіть макрос, щоб побачити результат.

Ми отримали результат як FALSE, оскільки з двох застосованих умов перша умова 25> = 20, ця умова виконана, отже результат TRUE і друга умова 30 <= 29 це не виконано результат FALSE. Для отримання результату як ІСТИНИ обидві умови повинні бути виконані.

Приклад №2

Тепер я зміню логічний тест на "100> 95 І 100 <200"

Код:

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

Запустіть код, щоб побачити результат.

Тут ми отримали TRUE як результат, тому що

1-й логічний тест: 100> 95 = TRUE

2-й логічний тест: 100 <200 = TRUE

Оскільки ми отримали TRUE результати для обох логічних тестів, наш кінцевий результат був TRUE.

Приклад №3

Тепер ми побачимо дані з робочого аркуша. Використовуйте дані, які ми використали, щоб показати приклад функції excel І.

Here the condition is Test 1 Score >= 250 AND Test 2 Score >= 250.

Since we have more than one cell of data we need to use loops to avoid writing unnecessary and time-consuming lines of codes. I have written the below code for you, formula, and logical is the same only thing is I have used “VBA For Next Loop”.

Code:

 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 Next k End Sub 

This will give the result exactly the same as our worksheet function but we will not get any formulas, we get only results.

Like this, we can apply AND logical function to test multiple conditions which are all should be TRUE to arrive at the desired results.

This works completely opposite of OR function, where OR requires any one of the supplied condition to be TRUE to arrive the results but AND requires 100% result in a logical test to arrive the results.