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 cumpridas, 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, precisamos que qualquer uma das condições lógicas fornecidas seja 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) AND (teste lógico) AND (teste lógico)

Acima, tenho duas pontuações de teste em 600.
Na coluna de resultados, preciso obter o resultado 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 como VERDADEIRO porque as pontuações dos Testes 1 e 2 são maiores ou iguais a 250.
Veja a célula C6 aqui. Obtivemos FALSE, embora a pontuação do Teste 2 seja igual a 250. Isso porque, no Teste 1, a pontuação é de apenas 179.
Exemplos para usar VBA e funções
Exemplo 1
Por exemplo, vamos testar os números aqui, se 25> = 20 e 30 <= 31.
Passo 1: Declare a variável como String.
Código:
Sub AND_Example1 () Dim K As String End Sub

Etapa 2: Para a variável “k”, atribuiremos 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 esse 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 r teste lógico: 100> 95 = TRUE
2 nd Teste de lógica: 100 <200 = TRUE
Como 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 são 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. Obtemos apenas resultados.

Assim, podemos aplicar a função lógica AND para testar várias condições, que são todas TRUE 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.