Compartilhe!

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:

Planilha para controle de acoes no Excel 01 - Planilha para controle de ações no Excel

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:

Planilha para controle de acoes no Excel 02 - Planilha para controle de ações no Excel

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 controle de acoes no Excel 03 - Planilha para controle de ações no Excel

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

Planilha para controle de acoes no Excel 04 - Planilha para controle de ações no Excel

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 controle de acoes no Excel 05 - Planilha para controle de ações no Excel

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 controle de acoes no Excel 06 - Planilha para controle de ações no Excel

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 acoes no Excel 07 - Planilha para controle de ações no Excel

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.

Você também vai gostar:
Como achar o atraso das dezenas da Lotofácil

Como achar o atraso das dezenas da Lotofácil Vamos mostrar neste artigo uma das maneiras de descobrir quantos concursos fazem Leia mais...

Como fazer Juros Compostos no Excel

Como fazer Juros Compostos no Excel Antes de mais nada vamos falar brevemente o que são os juros compostos. Juros Leia mais...

Como fazer um Vlookup de uma planilha para outra

Como fazer um vlookup de uma planilha para outra Muito comum para quem é usuário do Excel ter que buscar Leia mais...

Excel – Funções – Int

A função Int retorna apenas o número inteiro de um valor, por exemplo: =INT(2,9) O resultado será 2

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 *