Vba: como usar if not (com exemplos)


Você pode usar a seguinte sintaxe básica para usar a lógica IF NOT no VBA para testar se uma condição não foi atendida:

 SubIfNot ()
    Dim i As Integer
    
    For i = 2 To 11
        If Not Range(" B " & i) = " West " Then
        Result = “ Not WestElse
        Result = " West "
        End If
    Range(" C " & i) = Result
    Next i

End Sub

Este exemplo específico verifica se cada célula no intervalo B2:B12 não é igual a “Oeste” e, em seguida, atribui “Não Oeste” ou “Oeste” a cada célula correspondente no intervalo C2:C12 .

O exemplo a seguir mostra como usar essa sintaxe na prática.

Exemplo: como usar IF NOT em VBA

Suponha que temos o seguinte conjunto de dados no Excel que mostra o nome do time e a divisão de vários times de basquete:

Digamos que queremos atribuir um valor “Oeste” ou “Não Oeste” a cada célula da coluna C com base no fato de cada equipe estar ou não na divisão Oeste.

Podemos criar a seguinte macro para fazer isso:

 SubIfNot ()
    Dim i As Integer
    
    For i = 2 To 11
        If Not Range(" B " & i) = " West " Then
        Result = “ Not WestElse
        Result = " West "
        End If
    Range(" C " & i) = Result
    Next i

End Sub

Quando executamos esta macro, recebemos a seguinte saída:

Os valores da coluna C nos dizem se cada divisão da coluna B é ou não igual a “Oeste”.

Por exemplo:

  • A equipe A pertence ao “Oeste”, então a coluna C mostra “Oeste”
  • A equipe B pertence ao “Leste”, então a coluna C mostra “Não é o Oeste”
  • A equipe C pertence ao “Leste”, então a coluna C mostra “Não ao Oeste”
  • A equipe D pertence ao “Norte”, então a coluna C mostra “Não ao Oeste”

E assim por diante.

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras tarefas comuns em VBA:

VBA: Como usar IF OR para testar múltiplas condições
VBA: Como usar IF AND para testar múltiplas condições
VBA: como verificar se uma string contém outra string

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *