E aí, FERA! Sabe aquela sensação de estar escalando uma montanha só para importar dados da web para o Excel? Com o Power Query, isso vira um passeio no parque!
Vou te mostrar como importar dados da web para o Excel sem precisar decorar comandos mirabolantes.
Sua Demanda: Copiar uma tabela da internet [de um site]
Imagine que você precisa importar dados do site Portal Brasil sobre o INPC:
Antigamente, seria como tentar pescar com as mãos: um esforço enorme para pouco resultado.
A gente dava um Ctrl C
no site, e depois um Ctrl V
no Excel, e “rezava” pra não quebrar as colunas e linhas.
Agora com o o Power Query, é só copiar a URL do site, ir na aba ‘Dados’ do Excel, clicar em ‘Obter Dados’ e ‘Da Web’.
Cole a URL e, tchanan!
O Power Query faz o show, identificando as tabelas e trazendo os dados direto para o seu Excel, prontinhos para análise.
Veja só:
Você vai selecionar a opção de Anônimo pois não será necessário nesse exemplo passar usuário e senha do site.
Existem outras formas de conexão que você pode passar a senha, ou passar mais parâmetros nessa conexão, como nessa aula de conexão com API disponível em meu canal do Youtube.
Mas voltando ao nosso exemplo…
Uma vez que você informa o endereço, e o método de autenticação, ele vai abrir uma telinha, com várias sugestões que a INTELIGÊNCIA ARTIFICIAL do Power Query identificou na página de origem:
E pronto! num passe de mágica carregado ao Excel:
Quando os administradores do site alterarem a tabela (incluindo/modificando valores), você só precisa clicar no famoso botão Atualizar Tudo para que o Power Query busque os dados e entregue ao Excel novamente..
Quando eu abrir a planilha, quero que ela atualize sozinha!
Seu pedido é uma ordem FERA!
Basta você clicar com o botão ESQUERDO (clique simples) nessa tabela (verde) gerada, e em seguida selecionar a opção de Propriedades da Conexão:
Em seguida clique na opção Atualizar dados ao abrir o arquivo
Salve!
Com isso, toda vez que abrir o arquivo, o Power Query vai fazer essa busca de dados para você
OK, mas eu quero editar essa tabela antes de carregar
Vou te atender mais vez amigão!
Até agora, você não digitou nenhuma linha de comando, e vamos continuar assim.
Mas, vou te levar agora ao Ambiente Power Query dentro do Excel.
É um ambiente virtual, que é onde você determina as etapas no tratamento de dados antes de importá-los.
Para acessar, basta seguir a imagem:
Aqui dentro podemos com nosso mouse, selecionar o que queremos fazer com nossa tabela, como por exemplo, com 2 cliques no cabeçalho, mudar os títulos:
Veja que no cantinho do cabeçalho mostra um ABC, evidenciando que temos texto nessa coluna, e não podemos aplicar operações matemáticas (como soma) em textos.
Selecione as colunas com o Ctrl
apertado, e altere o tipo de dados:
Viu que os números foram “para direita”? e viu que o “ABC” mudou para “1.2” ?
Isso significa que ali tem dados numéricos agora.
Pra finalizar, você pode, por exemplo, selecionar as colunas que não quer, e apertar esse DELETE ai do teu teclado.
Depois é só FECHAR E CARREGAR, e veja a mágica acontecer…
Fiz questão de mostrar as colunas do lado, para ver que ali tinha dados, e nós optamos por não trazer.
A Cereja do Bolo: Trabalho Feito, não precisa ser refeito
Uma vez que você configurou seu comando no Power Query, toda vida que atualizar a planilha (seja pelo botão de Atualizar, ou pela opção de atualização na abertura), todos os comandos do Power Query serão reaplicados.
Mas quais comandos?
Esses Aqui!
Cada coisa que você fez com o mouse no Power Query, ficou gravado ali em ETAPAS APLICADAS.
Toda vez que atualizar, essas etapas serão refeitas PELO SISTEMA de forma automática, sem você precisar por a mão e refazer o trabalho.
Isso representa GANHO DE TEMPO!
E quando tenho várias páginas da WEB? Me Ajuda!
Achou mesmo que eu ia finalizar essa aula sem essa dica?
Se enganou meu amigo!
CLICA AQUI e veja mais um artigo aqui em nosso BLOG, onde já temos uma aula complementar a essa te aguardando!
Comparação com VBA: A Evolução do Clique
Essa captura de dados de uma página da internet se chama WEBSCRAPING.
Com o Power Query você viu como é simples de fazer isso, mas, quero que você dê uma olhadinha como importar dados da web para o Excel usando VBA.
Só que não me xinga, pois você teria que saber “de cabeça” (decorar) essa “tripa” de comando aqui:
Sub ImportarDadosWeb()
Dim QueryTable As QueryTable
Set QueryTable = ActiveSheet.QueryTables.Add(Connection:= _
"URL;https://www.portalbrasil.net/inpc/", Destination:=Range("$A$1"))
QueryTable.WebSelectionType = xlEntirePage
QueryTable.Refresh
End Sub
Ou em Python, um pouco mais simples que o VBA, mas ainda dependente de uma sequencia de comando digitado a mão (você precisaria saber):
import pandas as pd
url = 'https://www.portalbrasil.net/inpc/'
dados = pd.read_html(url)[0] # Supondo que os dados estejam na primeira tabela
dados.to_excel('dados_importados.xlsx')
Nível de facilidade:
- Power Query
- Python
- VBA
Claro que com Python temos algumas opções mais robustas, mas, ai carece do amigo leitor um tempo a mais de estudo para compreensão.
Complementando o Conhecimento
Eu preparei uma aula em video para te explicar esse mesmo passo a passo, com mais alguns detalhes.
Te convido a assistir CLICANDO AQUI.
Para concluir
No Power Query, você não precisa saber nenhum código. É tudo visual, intuitivo e com cliques.
Você simplesmente pega a URL, cola no Excel, e o Power Query faz o resto.
É como trocar um trator por um carro esportivo: mais rápido, mais eficiente e muito mais divertido de usar.
Em resumo, com o Power Query, você deixa para trás o mundo complicado do VBA e do Python para importação de dados. Você entra em uma era onde a importação de dados é rápida, fácil e acessível para todos, não apenas para os programadores.
Quer se juntar a essa revolução?
e torne-se um ANALISTA 4.0
Forte abraço