Macro do Excel: extraia dados históricos para várias ações com um clique

Excel SEO
Excel SEO

A análise de dados históricos de ações é essencial para investidores e traders que desejam tomar decisões informadas nos mercados financeiros. O Excel oferece uma solução simples e automatizável graças ao uso de macros VBA. Neste guia, veremos como criar uma macro para extrair automaticamente os dados históricos de várias ações, otimizando o processo de análise.

Por que usar uma macro VBA para dados históricos de ações?

O uso de macros VBA no Excel permite:

  • Automatizar o download de dados históricos de várias ações de fontes online.
  • Economizar tempo em comparação com a inserção manual de dados.
  • Atualizar facilmente o banco de dados com apenas um clique.
  • Personalizar o processo para adaptá-lo às suas necessidades de análise financeira.

Preparação do ambiente de trabalho

Antes de escrever a macro, certifique-se de ter o Excel com o editor VBA habilitado:

  1. Abra o Excel e pressione ALT + F11 para acessar o Editor VBA.
  2. Vá em Inserir > Módulo para criar um novo módulo VBA.

O código VBA para extrair dados históricos

Abaixo, apresentamos um código VBA que permite baixar dados históricos de várias ações usando o Yahoo Finance como fonte:

Sub ScaricaDatiStorici()
    Dim ws As Worksheet
    Dim i As Integer
    Dim symbol As String
    Dim url As String
    Dim lastRow As Integer

    ' Definire il foglio di lavoro attivo
    Set ws = ThisWorkbook.Sheets("Azioni")
    
    ' Determinare l’ultima riga con dati
    lastRow = ws.Cells(ws.Rows.Count, 1).End(xlUp).Row
    
    ' Ciclo per ogni simbolo di azione nella colonna A
    For i = 2 To lastRow
        symbol = ws.Cells(i, 1).Value
        url = "https://query1.finance.yahoo.com/v7/finance/download/" & symbol & "?period1=1609459200&period2=1672444800&interval=1d&events=history"
        
        ' Scaricare i dati
        With ws.QueryTables.Add(Connection:="URL;" & url, Destination:=ws.Cells(i, 2))
            .BackgroundQuery = False
            .Refresh
            .Delete
        End With
    Next i

    MsgBox "Dati storici scaricati con successo!", vbInformation
End Sub

Como o código funciona?

  1. A macro lê os símbolos das ações listados na coluna A da planilha nomeada “Azioni”.
  2. Constrói um URL para baixar os dados do Yahoo Finance.
  3. Usa QueryTables.Add para importar os dados diretamente para a planilha do Excel.
  4. Itera por cada símbolo presente na coluna, repetindo o processo.
  5. Ao final, exibe uma mensagem de confirmação.

Personalização da macro

  • Modificação do intervalo de tempo:
    • Os parâmetros period1 e period2 representam as datas de início e fim no formato timestamp Unix. Você pode modificá-los para obter um intervalo de dados diferente.
  • Fontes alternativas:
    • Se o Yahoo Finance não fornecer os dados desejados, você pode substituir o URL por outras APIs de mercado.
  • Gerenciamento de erros:
    • Adicione um controle para gerenciar possíveis erros no download de dados ou símbolos inválidos.

Vantagens do uso de uma macro para dados históricos

  • Economia de tempo: evita o download manual de dados.
  • Atualizações dinâmicas: permite obter os dados com apenas um clique.
  • Maior precisão: reduz o risco de erros na inserção manual.

Conclusão

O uso de uma macro VBA no Excel para extrair dados históricos de várias ações é um método eficaz para otimizar o trabalho de análise financeira. Com o código apresentado, você pode baixar automaticamente as cotações de diferentes títulos e atualizá-las periodicamente, melhorando assim sua estratégia de investimento. Personalize a macro de acordo com suas necessidades e aproveite ao máximo o potencial do Excel para o gerenciamento de dados financeiros.

Pubblicato in

Se vuoi rimanere aggiornato su Macro do Excel: extraia dados históricos para várias ações com um clique iscriviti alla nostra newsletter settimanale

Seja o primeiro a comentar

Faça um comentário

Seu e-mail não será divulgado.


*