Blog

Postado em em 17 de setembro de 2021

Série Automação Web Aula7 – Interação com o Usuário

Essa é a Série Automação Web Aula7 onde vamos finalizar a planilha e criar a interação com o usuário para facilitar a utilização da planilha!

Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo!

Para receber por e-mail o(s) arquivo(s) utilizados na aula, preencha:

Essa é a penúltima aula da Série Automação Web em VBA (Série Automação Web Aula7) e nessa aula eu vou te mostrar como atribuir macro a um botão e fazer a interação VBA com usuário.

Essa interação com o usuário é muito importante para que você consiga melhorar a utilização do seu código, assim ele vai poder utilizar o programa com mais facilidade.

Então vou te mostrar como:

  • como atribuir a macro a um botão
  • utilizar o MsgBox no VBA
  • caixa de mensagem no VBA para que o usuário consiga escolher se quer rodar o código ou não
  • validações com a função If no VBA
  • utilizar a função Now no VBA (função AGORA no VBA) para registrar o momento em que estamos fazendo a busca de preços.

Atribuindo a macro a um botão (já criado)

Para atrelar o código ao nosso botão, no Excel, clicaremos com o botão direito do mouse no botão, iremos em atribuir macro… e procuraremos pela nossa macro (ComparadorDePreco).

Em seguida, clicaremos nela e em OK.

Série Automação Web Aula8

Pronto. Agora basta clicar com o botão esquerdo do mouse no botão, que o código irá rodar.

Utilizando MsgBox no começo (Sim e Não)

resp = MsgBox("Você realmente quer rodar o código?", vbYesNo)

If resp <> 6 Then Exit Sub

As duas linhas de código acima inseridas no começo da nossa macro são responsáveis por:

  • Vamos armazenar a resposta (na variável “resp”) do clique em “Sim” ou “Não” na MsgBox criada e chamada para perguntar “Você realmente quer rodar o código?”
  • Faremos uma verificação com uma estrutura If para ver se a resposta (variável resp) for diferente do número 6 (resposta padrão Sim para caixa de mensagem criada anteriormente) abortaremos o código (comando Exit Sub)

Resultado da MsgBox criada no começo:

Caixa de mensagem no VBA com opções
Caixa de mensagem no VBA com opções

Utilizando MsgBox no final (nome do produto com preço atingido)

    If menorPreco < Cells(lin, 5).Value Then

        MsgBox ("O produto " & Cells(lin, 2).Value & " atingiu o preço alvo!")

    End If

As três linhas de código acima inseridas no final da nossa macro são responsáveis por:

  • Faremos uma verificação com uma estrutura If para ver se a resposta da variável menorPreco (encontrada pelo nosso código) for menor do que o valor encontrado na mesma linha de código do produto da vez, mas na 5ª coluna (preço alvo do produto), invocaremos uma caixa de mensagem VBA
  • Vamos invocar uma MsgBox criada e chamada para informar que “O produto ” & Cells(lin, 2).Value & ” atingiu o preço alvo!”, sendo que o produto será o texto que estará armazenado na variável lin e na 2ª coluna da nossa planilha.

Resultado da MsgBox do final:

Série Automação Web Aula8
Caixa de mensagens no VBA

Função NOW para registrar o momento da busca de preços

Cells(3, 1).Value = Now

Essa simples linha de código acima, que foi inserida no começo da nossa macro, logo após a resposta de rodar ou não a macro, é responsável por:

  • Armazenar na célula da terceira linha, e da primeira coluna (em outras palavras, na célula A3) a informação com a data e hora atuais, pela função Now no VBA

Resultado:

Função AGORA no VBA
Função AGORA no VBA

 

Conclusão – Série Automação Web Aula7

Hoje aprendemos a lidar com:

Isso tudo para deixar nossa automação Web no VBA ainda melhor para o usuário e ele ter a melhor experiência em web Scraping no VBA ao interagir de forma fácil com a planilha e o código!

Valeu, pessoal! Fique ligado no nosso canal do Youtube para mais conteúdo de Excel e VBA toda semana! Um abraço!

Hashtag Treinamentos

Para acessar outras publicações de VBA, clique aqui!


Quer aprender mais sobre VBA com um Minicurso Gratuito?


Quer aprender a construir um Dashboard do Zero e também tudo que você precisa para passar em uma Prova de Excel? Participe da Jornada do Excel!