Função VBA AND

Função Excel VBA AND

AND é uma função lógica, bem como um operador lógico, o que significa que se todas as condições fornecidas nesta função forem satisfeitas, então apenas teremos o resultado verdadeiro, enquanto se qualquer uma das condições falhar, a saída será retornada como falsa, temos Comando AND embutido no VBA para usar.

Espero que você tenha lido nosso artigo sobre “VBA OR” e “VBA IF OR”. Esta função é exatamente o oposto da função OR. Na função OR, precisávamos que qualquer uma das condições lógicas fornecidas fosse satisfeita para obter o resultado como TRUE. Mas na função AND é exatamente o contrário. Para obter o resultado TRUE, todos os testes lógicos fornecidos no Excel precisam ser satisfeitos.

Ok, olhe a sintaxe da função AND no Excel.

[Teste lógico] E [Teste lógico] E [Teste lógico]

Acima, tenho duas pontuações de teste em 600.

Na coluna de resultados, preciso obter o resultado como TRUE se a pontuação de ambos os testes for maior que 250.

Veja a imagem abaixo.

Quando aplicamos a função lógica AND obtemos os resultados. Nas células C4 e C5, obtivemos o resultado VERDADEIRO porque as pontuações dos Testes 1 e 2 são maiores ou iguais a 250.

Olhe para a célula C6 aqui, obtemos FALSO, embora a pontuação do Teste 2 seja igual a 250. Isso ocorre porque no Teste 1 a pontuação é de apenas 179.

Exemplos para usar VBA e funções

Você pode baixar este modelo VBA E Excel aqui - modelo VBA E Excel

Exemplo 1

Por exemplo, testaremos os números aqui, se 25> = 20 e 30 <= 31.

Etapa 1: declare a variável como String.

Código:

 Sub AND_Example1 () Dim K As String End Sub 

Passo 2: Para a variável “k” iremos atribuir o valor aplicando a função AND.

Código:

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

Etapa 3: forneça a primeira condição como 25> = 20.

Código:

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

Passo 4: Agora abra a função AND e forneça o segundo teste lógico, ou seja, 30 <= 29.

Código:

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

Passo 5: Agora mostre o resultado da variável “k” na caixa de mensagem em VBA.

Código:

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

Execute a macro para ver qual é o resultado.

Obtivemos o resultado como FALSO porque das duas condições aplicadas, a primeira condição 25> = 20, essa condição é satisfeita, então o resultado é VERDADEIRO e a segunda condição 30 <= 29 este resultado não satisfeito é FALSO. Para obter o resultado como TRUE, ambas as condições devem ser satisfeitas.

Exemplo # 2

Agora vou mudar o teste lógico para “100> 95 AND 100 <200”

Código:

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

Execute o código para ver o resultado.

Aqui temos TRUE como resultado porque

1º Teste Lógico: 100> 95 = VERDADEIRO

2º Teste Lógico: 100 <200 = VERDADEIRO

Uma vez que obtivemos os resultados TRUE para ambos os testes lógicos, nosso resultado final é TRUE.

Exemplo # 3

Agora veremos os dados da planilha. Use os dados que usamos para mostrar o exemplo da função AND do Excel.

Aqui, a condição é Pontuação do Teste 1> = 250 E Pontuação do Teste 2> = 250 .

Como temos mais de uma célula de dados, precisamos usar loops para evitar a gravação de linhas de códigos desnecessárias e demoradas. Eu escrevi o código abaixo para você, fórmula e lógica é a mesma coisa que usei “VBA For Next Loop”.

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

Isso dará o resultado exatamente o mesmo que nossa função de planilha, mas não obteremos nenhuma fórmula, obteremos apenas resultados.

Assim, podemos aplicar a função lógica AND para testar várias condições que devem ser VERDADEIRAS para chegar aos resultados desejados.

Isso funciona completamente oposto à função OR, onde OR requer que qualquer uma das condições fornecidas seja TRUE para chegar os resultados, mas AND requer 100% de resultado em um teste lógico para chegar os resultados.