Como usar ifna em vba (com exemplo)
Você pode usar o método IfNa no VBA para retornar um valor específico se uma fórmula gerar um erro #N/A .
Aqui está uma maneira comum de usar IfNa na prática:
Sub UseVLOOKUP()
With Application
Range(" F2 ").Value = .IfNa(.Vlookup(Range(" E2 "), Range(" A2:C11 "),3,False), "No Value Found")
End With
End Sub
Esta macro específica tenta usar a função VLOOKUP para encontrar o valor na célula E2 no intervalo A2:C11 .
Se o valor na célula E2 não for encontrado, a fórmula fornecerá #N/A .
No entanto, podemos usar o método IfNa para retornar “No Value Found” em vez de #N/A .
O exemplo a seguir mostra como usar essa sintaxe na prática.
Exemplo: como usar IfNa em VBA
Digamos que temos o seguinte conjunto de dados no Excel que contém informações sobre vários jogadores de basquete:
Digamos que queremos pesquisar no conjunto de dados o nome do time “Kings” e retornar o valor correspondente na coluna de assistências.
Podemos criar a seguinte macro para fazer isso:
Sub UseVLOOKUP()
With Application
Range(" F2 ").Value = .IfNa(.Vlookup(Range(" E2 "), Range(" A2:C11 "),3,False), "No Value Found")
End With
End Sub
Quando executamos esta macro, recebemos a seguinte saída:
A macro retorna corretamente um valor de 3 assistências para os Reis.
Agora suponha que alteremos o nome da equipe na célula E2 para “Grizzlies”, que não existe no conjunto de dados.
Quando executarmos esta macro novamente, ela retornará “Nenhum valor encontrado” porque é o valor que especificamos que deve ser retornado se a função VLOOKUP resultar em um erro #N/A.
A macro retorna “Nenhum valor encontrado”, pois os Grizzlies não existem na coluna da equipe.
Nota : Você pode encontrar a documentação completa do método VBA IfNa aqui .
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns em VBA:
VBA: Como usar correspondência de índice
VBA: Como classificar uma planilha por múltiplas colunas
VBA: como verificar se uma string contém outra string