Como usar a busca de meta no Visual Basic

Uma das funções mais poderosas do Microsoft Excel é “Objetivo” (a capacidade de encontrar um valor para uma célula que produz um determinado resultado em outra célula). Normalmente, você pode encontrar a Busca de meta no menu “Dados” ou na guia “Faixa de opções”, mas se precisar executar a Busca de meta várias vezes, provavelmente poderá economizar muito tempo automatizando essa opção com um Visual Basic (VBA) para um aplicativo de macro. Felizmente, o Goal Seek é totalmente integrado ao VBA, portanto, é fácil escrever uma macro para usar.

Passo 1

Abra o documento do Excel no qual você deseja executar sua macro de busca de objetivo.

Etapa 2

Encontre duas células nas quais você gostaria de usar a Busca de meta. O primeiro deve ser a célula na qual você tem um objetivo fixo. O segundo deve ser o local onde você permite que o Excel mude para atingir o objetivo. O valor da primeira célula deve ser uma fórmula baseada na segunda fórmula (caso contrário, as alterações feitas pelo Excel na segunda célula não importam, pois não aparecerão na primeira).

Etapa 3

Abra a janela macro. No Excel 2007 ou posterior, você faz isso clicando na guia “Exibir” na lista e depois em “Macros”. Nas versões anteriores do Excel, clique no menu “Ferramentas”, escolha “Macros” e depois em “Macros”.

Etapa 4

Digite o nome da sua macro Object Seek na janela Macro e clique em “Criar”. Isso iniciará o programa Visual Basic para os aplicativos do editor e mostrará o texto da nova macro, que aparecerá como uma sub-rotina vazia como esta:

Sub MyMacroName () End Sub

Etapa 5

Eles criam um intervalo de objetos que representa a célula para a qual você tem um objetivo conhecido (a primeira célula na Etapa 2). Por exemplo, se você deseja uma busca por objetivo para a célula A1, digite:

Dim goalCell As Range goalCell = ThisWorkbook.Worksheet (1) .Range (“A1”)

Etapa 6

Crie um intervalo de objetos que represente a célula que você deseja que o Excel altere para que a primeira célula atinja o novo destino. Por exemplo, se você deseja que o Excel manipule a célula A2, digite:

Dim variableCell As Range variableCell = ThisWorkbook.Worksheet (1) .Range (“A2”)

Etapa 7

Procure o método GoalSeek no intervalo da célula de destino. Como primeiro argumento, ele oferece o valor no qual você deseja aplicar a Busca de meta; como argumento, ele oferece o intervalo da célula variável. Por exemplo, se você deseja aplicar a Busca de meta a 0, digite:

goalCell.GoalSeek (0, variableCell)

Referências

 

Você pode estar interessado:

Deixe um comentário