Como usar o Goal Seek no Visual Basic

Escrito por samuel porter | Traduzido por aline kachel araujo
  • Compartilhar
  • Tweetar
  • Compartilhar
  • Pin
  • E-mail
Como usar o Goal Seek no Visual Basic
Saiba como ganhar tempo usando o Goal Seek no Visual Basic (Jupiterimages/Photos.com/Getty Images)

Uma das funções mais poderosas do Microsoft Excel é o "Goal Seek" - a possibilidade de encontrar um valor de célula que produz um resultado determinado em outra célula. Normalmente, você pode acessar o Goal Seek através do menu "Dados" ou da guia "Laço", mas se você precisar executar o Goal Seek várias vezes, você pode economizar muito tempo automatizando o processo com uma macro do Visual Basic para Aplicativos (VBA). Felizmente o Goal Seek é totalmente integrado ao VBA, então, é fácil escrever uma macro para usar.

Nível de dificuldade:
Moderado

Outras pessoas estão lendo

Instruções

  1. 1

    Abra o documento do Excel no qual você quer executar sua macro Goal Seek.

  2. 2

    Localize as duas células nas quais você deseja usar o Goal Seek. A primeira célula deve ser a que tem um objetivo fixo. A segunda célula deve ser aquela cujo valor você permite que o Excel mude para atingir o objetivo. O valor da primeira célula deve ser uma fórmula baseada na segunda célula, ou então, independente de quantas mudanças o Excel faça na segunda célula, nenhuma mudança acontecerá na primeira.

  3. 3

    Abra a janela de Macros. No Excel 2007 ou versões mais recentes, clique na guia "Exibição" e clique em "Macros". Nas versões mais antigas do Excel, clique no menu "Ferramentas", escolha a opção "Macro" e depois a opção "Macros".

  4. 4

    Digite um nome para sua macro Goal Seek na janela de macros e clique em "Criar". Isso vai abrir o editor do Visual Basic para Aplicativos e exibir o texto da nova Macro, que vai começar como uma sub-rotina em branco assim:

    Sub NomeDaMacro() End Sub

  5. 5

    Crie um objeto Range que represente a célula para qual você tem um objetivo definido (a primeira célula do Passo 2). Por exemplo, caso você queira usar o Goal Seek na célula A1, escreva:

    Dim celulaDestino As Range celulaDestino = EstaPasta.Planilha(1).Range("A1")

  6. 6

    Crie um objeto Range que represente a célula que você quer que o Excel altere para que a primeira célula tenha o resultado desejado. Por exemplo, caso você queira que o Excel manipule a célula A2, escreva:

    Dim celulaVariavel As Range celulaVariavel = EstaPasta.Planilha(1).Range("A2")

  7. 7

    Chame o método GoalSeek no Range da célula objetivo. Como primeiro argumento, coloque o valor que você quer que a célula tenha; como segundo argumento, coloque o Range da célula variável. Por exemplo, caso você queira que o Goal Seek dê 0, escreva:

    celulaDestino.GoalSeek(0, celulaVariavel)

Dicas & Advertências

  • Como o Visual Basic é muito poderoso, erros em macros VB podem facilmente causar muitos dados em sua planilha. Faça uma cópia de segurança de sua planilha antes de tentar uma macro nova.

Não perca

Filtro:
  • Geral
  • Artigos
  • Slides
  • Vídeos
Mostrar:
  • Mais relevantes
  • Mais lidos
  • Mais recentes

Nenhum artigo disponível

Nenhum slide disponível

Nenhum vídeo disponível