VBA И функция | Как да използвам И логически оператор във VBA?

Excel VBA И функция

И е логическа функция, както и логически оператор, което означава, че ако всички условия, предвидени в тази функция са изпълнени, тогава само ние ще имаме истинския резултат, докато ако някое от условията не успее, изходът се връща в false, имаме вградена И команда във VBA за използване.

Надявам се, че сте прегледали статията ни за „VBA ИЛИ“ и „VBA АКО ИЛИ“. Тази функция е точно обратната на функцията OR. Във функцията OR се нуждаехме от някой от предоставените логически условия, за да получим резултата като TRUE. Но във функцията И е точно обратното. За да получите резултата от TRUE, всички предоставени логически тестове в Excel трябва да бъдат изпълнени.

Добре, вижте синтаксиса на функцията И в Excel.

[Логически тест] И [Логически тест] И [Логически тест]

В горното имам два тестови резултата от 600.

В колоната с резултати трябва да получа резултата като TRUE, ако резултатът от двата теста е по-голям от равен на 250.

Погледнете изображението по-долу.

Когато приложим логическата функция И получихме резултатите. В клетка C4 и C5 получихме резултата като TRUE, защото резултатите от Test 1 и Test 2 са по-големи или равни на 250.

Погледнете клетката C6 тук, имаме FALSE, въпреки че резултатът от тест 2 е равен на 250. Това е така, защото в тест 1 резултатът е само 179.

Примери за използване на VBA и функция

Можете да изтеглите този шаблон на VBA И Excel от тук - VBA и Excel шаблон

Пример # 1

Например, ще тестваме числата тук, независимо дали 25> = 20 и 30 <= 31.

Стъпка 1: Декларирайте променливата като String.

Код:

 Sub AND_Example1 () Dim K As String End Sub 

Стъпка 2: За променливата „k“ ще присвоим стойността, като приложим функцията И.

Код:

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

Стъпка 3: Поставете първото условие като 25> = 20.

Код:

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

Стъпка 4: Сега отворете функцията И и предоставете втория логически тест, т.е. 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 

Изпълнете макроса, за да видите какъв е резултатът.

We got the result as FALSE because we out of applied two conditions first condition 25>=20, this condition is satisfied so the result is TRUE and second condition 30<=29 this is not satisfied result is FALSE. In order to get the result as TRUE both the conditions should be satisfied.

Example #2

Now I will change the logical test to “100>95 AND 100<200”

Code:

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

Run the code to see the result.

Here we got TRUE as the result because

1st Logical Test: 100 > 95 = TRUE

2nd Logical Test: 100 < 200 = TRUE

Since we got the TRUE results for both the logical tests our final result as TRUE.

Example #3

Now we will see data from the worksheet. Use the data that we have used to show the example of excel AND function.

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.