Como usar isna em vba (com exemplos)
Você pode usar o método IsNA em VBA para verificar se uma determinada célula contém #N/A ou não.
Esta função retornará TRUE se a célula contiver #N/A ou FALSE caso contrário.
Aqui está uma maneira comum de usar esse método na prática:
Sub UseIsNA()
Dim i As Integer
For i = 2 To 10
Range("B" & i) = WorksheetFunction.IsNA(Range("A" & i))
Next i
End Sub
Esta macro específica irá verificar se cada célula no intervalo A2:A10 contém #N/A ou não.
Se uma célula contiver #N/A , TRUE será retornado na célula correspondente no intervalo B2:B10 .
Caso contrário, será retornado FALSE .
O exemplo a seguir mostra como usar essa sintaxe na prática.
Exemplo: como usar IsNA em VBA
Suponha que temos a seguinte coluna de valores no Excel:
Suponha que queremos verificar se cada célula da coluna A contém #N/A ou não.
Podemos criar a seguinte macro para fazer isso:
Sub UseIsNA()
Dim i As Integer
For i = 2 To 10
Range("B" & i) = WorksheetFunction.IsNA(Range("A" & i))
Next i
End Sub
Quando executamos esta macro, recebemos a seguinte saída:
A coluna B exibe um resultado que nos informa se cada célula correspondente na coluna A é igual ou não a #N/A .
Observe que células vazias não são iguais a #N/A . Quando uma célula vazia é encontrada, o método IsNA retorna FALSE .
Observe também que você pode usar uma instrução If para retornar valores diferentes de TRUE e FALSE .
Por exemplo, poderíamos criar a seguinte macro:
Sub UseIsNA()
Dim i As Integer
For i = 2 To 10
If WorksheetFunction.IsNA(Range("A" & i)) Then
Range("B" & i) = "Cell Contains #N/A"
Else
Range("B" & i) = "Cell Does Not Contain #N/A"
End If
Next i
End Sub
Quando executamos esta macro, recebemos a seguinte saída:
A coluna B agora contém um texto específico que nos informa se a célula correspondente na coluna A contém ou não #N/A .
Nota : Você pode encontrar a documentação completa do método VBA IsNA aqui .
Recursos adicionais
Os tutoriais a seguir explicam como realizar outras tarefas comuns em VBA:
Como converter string em int em VBA
Como converter uma string em double no VBA
Como verificar se uma string contém outra string em VBA