Compartilhe!

Planilha para acompanhar a bolsa de valores

Antes de mais nada vamos dizer que muitas pessoas apesar de terem investimentos pessoais em ações não acompanham diariamente a evolução das cotações delas.

Assim uma das razões é que não é tão simples e fácil pegar os dados da internet e atualizar em uma planilha.

Primeiro porque não sabem onde pegar as informações das cotações.

Segundo porque não sabem usar direito o Excel.

Por isso resolvemos mostrar como qualquer um pode montar sua própria planilha para controle das cotações e atualizá-la diariamente mudando apenas a data.

Então vamos fazer um exemplo com as seguintes ações:

Planilha para acompanhar a bolsa de valores 01 - Planilha para acompanhar a bolsa de valores

Criando a planilha para acompanhar Bolsa de Valores

Em seguida vamos criar a função no VBA para buscar os dados do site do Yahoo Finanças.

Abra a janela do VBA pressionando Alt + F11 ou vá no menu Desenvolvedor - Visual Basic conforme abaixo:

Planilha para acompanhar a bolsa de valores 02 - Planilha para acompanhar a bolsa de valores

Com a janela do VBA aberta adicione um novo módulo clicando com o botão direito do mouse em cima onde está escrito "Microsoft Excel Objetos" e depois Inserir - Módulo, conforme figura abaixo:

Planilha para acompanhar a bolsa de valores 03 - Planilha para acompanhar a bolsa de valores

Em seguida copie e cole o seguinte código conforme ilustrado na figura:

Planilha para acompanhar a bolsa de valores 04 - Planilha para acompanhar a bolsa de valores

Function EA_Preco(Acao As String, exceleaccessRef As Date) As Double
exceleaccess1 = (exceleaccessRef - DateSerial(1970, 1, 1)) * 86400
exceleaccess2 = (exceleaccessRef - DateSerial(1970, 1, 1) + 1) * 86400
Set objRequest = CreateObject("WinHttp.WinHttpRequest.5.1")
With objRequest
.Open "GET", "https://finance.yahoo.com/lookup?s=exceleaccess", False
.setRequestHeader "Content-Type", "application/x-www-form-urlencoded;charset=UTF-8"
.send
.waitForResponse (10)
cookie = Split(.getResponseHeader("Set-Cookie"), ";")(0)
exceleaccessIni = InStrRev(.ResponseText, """crumb"":""") + 9
exceleaccessFim = exceleaccessIni + 11
ExceleAccess = Mid(.ResponseText, exceleaccessIni, exceleaccessFim - exceleaccessIni)
End With
If Len(ExceleAccess) = 11 Then
ExceleAccess = "https://query1.finance.yahoo.com/v7/finance/download/" & Acao & _
"?period1=" & exceleaccess1 & "&period2=" & exceleaccess2 & _
"&interval=" & "1d" & "&events=history" & "&crumb=" & EA
Set objRequest = CreateObject("WinHttp.WinHttpRequest.5.1")
With objRequest
.Open "GET", ExceleAccess, False
.setRequestHeader "Cookie", cookie
.send
.waitForResponse
ExceleAccess = .ResponseText
End With
ExceleAccess = Split(Mid(ExceleAccess, InStr(ExceleAccess, Chr(10)) + 1, 500), ",")
EA_Preco = Val(ExceleAccess(4))
End If
End Function

Usando a função no Excel

Agora volte para o Excel e na coluna ao lado da ação digite a seguinte fórmula:

=EA_Preco(B10;C7)

Onde:

  • B10 = Código da ação
  • C7 = Data que deseja a cotação

Em seguida copie essa fórmula para as demais ações.

Agora veja como ficou no nosso exemplo:

Planilha para acompanhar a bolsa de valores 05 - Planilha para acompanhar a bolsa de valores

Dessa forma você consegue agora com essa função EA_Preco montar qualquer tabela para análise da sua carteira.

Assim sendo veja outro exemplo de como você pode montar sua tabela:

Planilha para acompanhar a bolsa de valores 06 - Planilha para acompanhar a bolsa de valores

Dessa forma você consegue ver o histórico de cotações do ITAU e comparar com o da Petrobrás.

Enfim veja como ficaria essa tabela no gráfico:

Planilha para acompanhar a bolsa de valores 07 - Planilha para acompanhar a bolsa de valores

Planilha para acompanhar a bolsa de valores

Gostou do conteúdo? Ele foi útil?
Se ainda ficou com alguma dúvida entre em contato conosco pelo email contato@exceleaccess.com.
Quer receber várias dicas no seu seu email?
Cadastre seu email aqui para receber várias dicas como essa por email.

Você também vai gostar:
Como colocar Dia da Semana no Excel Automático

Como colocar Dia da Semana no Excel Automático Quando você precisa saber o dia da semana que cai alguma data Leia mais...

Como fazer uma formatação de semáforo no Excel

Como fazer uma formatação de semáforo no Excel Neste artigo vamos mostrar um exemplo de como usar a formatação condicional Leia mais...

Excel – Quebra de Página

Para visualizar a quebra de página, ir no menu "Exibição" e clicar em "Visualização da Quebra de Página". Para retirar Leia mais...

Excel – Funções – Desloc ou Offset

A função Desloc retorna o valor de uma célula deslocados n linhas e n colunas da referência. Por exemplo a Leia mais...

Obrigado pela visita!

www.exceleaccess.com

contato@exceleaccess.com

www.exceleaccess.com

www.exceleaccess.com

www.exceleaccess.com


Compartilhe!

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *