Dashboard com link dinâmico Excel

2
Dashboard com link dinâmico Excel

Objetivo: Demonstrar uma técnica para mudar os dados de um gráfico no Excel simplesmente passando o mouse sobre uma opção.

Dashboard com link dinâmico 1

Há várias formas de transformar os dados em informações, uma das mais interessantes é o uso de gráficos.

Neste exemplo veremos a criação de um gráfico com links dinâmicos, que ao passar o mouse sobre uma das opções de filiais da empresa, neste caso, os dados tanto da tabela, quanto do gráfico serão alteradas automaticamente.


PREPARANDO OS DADOS

A primeira coisa é montar a nossa base de dados, no caso do nosso exemplo criamos a seguinte estrutura, que possui os dados das filiais, por exemplo valores de vendas.

Estes dados foram expressos por filial e meses:

Dashboard com link dinâmico 0

Esta é uma lista simples sem fórmulas.

Agora copiamos as duas primeiras linhas:

Dashboard com link dinâmico 0.1

Na coluna célula abaixo do cabeçalho Filial, renomeamos o campo para Filial, para isto basta selecionar a célula e digitar Filial no campo acima indicado:

Dashboard com link dinâmico 0.2

Nas células abaixo dos meses digitar a seguinte fórmula: =PROCV(A10;A1:B6;CORRESP(B9;A1:M1;0);0)

Esta função tem por objetivo  retornar os dados que referentes a filial que constar á esquerda e a coluna do mês que constar logo acima da função.

No caso é interessante destacar o uso da função Corresp que está retornando o número da coluna correspondente para o PROCV. Veja abaixo explicações sobre estas funções:

Procv: https://guiadoexcel.com.br/procv-e-proch-excel

Índice Corresp: https://guiadoexcel.com.br/indice-corresp

Sendo assim já temos a planilha pronta para a criação do gráfico.


CRIAÇÃO DO GRÁFICO

A criação do gráfico é a parte mais simples =D.

Para criá-lo basta selecionar os dados da última tabela que criamos, que possui apenas duas linhas, e pressionar as teclas ALT+F1, o gráfico será criado automaticamente.

Dashboard com link dinâmico 0.3


FAZENDO A MUDANÇA DOS DADOS DE FORMA DINÂMICA

1. Clique na guia Desenvolvedor e no botão Visual Basic, veja aqui como habilitar esta guia: https://guiadoexcel.com.br/habilitando-a-guia-desenvolvedor-e-copiando-procedimentos-vba-sub-da-internet;

2. Na tela que segue, clique em Inserir->Módulo e cole o seguinte código fonte:

 

Function fnLinkDinamico(Target As Range)
    Range("Filial").Value = Target.Value
End Function

Este código fonte tem por função realizar a troca dos dados conforme a seleção realizada. Em outra função.

Ao lado do gráfico, ou qualquer outro lugar, digitar a seguinte fórmula: =SE(A2=””;””;SEERRO(HIPERLINK(fnLinkDinamico(A2));A2)), sendo A2 a célula equivalente a Filial 1, na primeira tabela criada.

Entendendo a função: Se A2 for igual a Vazio, então vazio, senão retornar o hiplerlink para o valor da célula A2. A função Hiperlink, quando apenas passada com o mouse sobre a mesma já é acionada. Fazendo com que o código da nossa função VBA também seja, alterando o valor da célula que nomeamos como Filial e alterando os dados, tanto da tabela quanto do gráfico que está ligado á ela.

Funcionamento

Por fim ainda podem ser inclusas imagens sobre os links, as células com as fórmulas que criamos, para que fique com uma estética melhor.[saiba_mais]

Para isto basta clicar na guia Inserir->Formas, selecionar e incluir a forma que desejar e, clicando sobre a mesma, escrever o nome das filiais.

Dashboard com link dinâmico 0.5


Então é isso, um abraço, qualquer dúvida por favor poste em nosso fórum www.guiadoexcel.com.br/forum e aproveite também para conhecer os nossos cursos clicando no link abaixo.

Cursos do Guia do Excel - Destaque-se no mercado de trabalho

Aqui o download do arquivo com o exemplo criado, gratuitamente como sempre =D.

Abraço

Marcos Rieper

2 COMENTÁRIOS

  1. Marcos,
    Parabéns!! Que excelente post e que bacana esse modelo de Dashboard.
    Eu tive dificuldade para colocar dados diferentes de “Filial”. Não manjo muito do código, mas entendo que se houver dados diversos sem alguma semelhança como (Filial y, Loja y), os comandos devem ser diferentes. Está correto?.
    Como poderia fazer isso?

    Um abraço.

    • Olá Paulo,

      Obrigado pelo seu comentário e retorno sobre o artigo.

      Para fazer isso basta mudar o nome no código VBA de Range(“Filial”).Value = Target.Value para Range(“Loja”).Value = Target.Value ou outro nome de coluna que desejar.

      At.

      Marcos Rieper

DEIXE UMA RESPOSTA

Please enter your comment!
Please enter your name here