VBA – Uso do Goal Seek no VBA
Este tutorial mostrará a você como usar o Goal Seek no VBA.
O Goal Seek é uma das ferramentas de análise de variações hipotéticas disponíveis no Excel que permite aplicar valores diferentes a fórmulas e comparar os resultados.
Sintaxe do Goal Seek
A função GoalSeek tem dois argumentos: Goal (Meta – o resultado a ser alcançado) e ChangingCell (a célula que precisa ser alterada). A função retorna um Verdadeiro ou um Falso – Verdadeiro se a meta for encontrada e Falso se a meta não for encontrada.
Uso do Goal Seek no VBA
Considere a planilha a seguir.
Para alterar o pagamento necessário a cada mês alterando o prazo em meses, podemos escrever o seguinte procedimento.
Sub AumentarPrazo()
'tornar B6 100 alterando B5
Range("B6").GoalSeek Goal:=100, ChangingCell:=Range("B5")
End Sub
Observe que é necessário haver uma fórmula na célula B6 e um valor na célula B5.
Uso de Goal Seek com uma instrução If
Você também pode usar o GoalSeek com uma instrução If para direcionar o fluxo do seu código
Sub AumentarPrazo()
'Torne B6 100 alterando B5 - e retorne uma mensagem ao usuário
If Range("B6").GoalSeek(Goal:=100, ChangingCell:=Range("B5")) = True Then
MsgBox "O novo prazo foi encontrado com sucesso"
Else
MsgBox ("O novo prazo não foi encontrado")
End If
End Sub