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:
Excel – Mensagem ao usuário para continuar ou não uma macro via VBA

As vezes o usuário aperta o botão sem querer e roda uma macro sem desejar. Para que isso não aconteça Leia mais...

Como fazer no Excel célula com opções

Como fazer no Excel célula com opções Neste artigo vamos mostrar como inserir opções em uma célula no Excel. Você Leia mais...

Como fazer tabela no Excel e passar para o word

Como fazer tabela no Excel e passar para o word Não há dúvidas que trabalhar como tabelas a melhor ferramenta Leia mais...

Fórmula para calcular idade no Excel

Fórmula para calcular idade no Excel Apesar de parecer fácil o cálculo de idades no Excel muita gente ainda tem 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 *