Planilha para controle de ações no Excel
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:
Criando a planilha para controle de Ações no Excel
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:
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:
Em seguida copie e cole o seguinte código conforme ilustrado na figura:
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
EndFunction
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:
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:
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 controle de ações no Excel
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.
Obrigado pela visita!
www.exceleaccess.com
contato@exceleaccess.com
www.exceleaccess.com
www.exceleaccess.com
www.exceleaccess.com