Gráfico Excel com eixo Y com altura dinâmica VBA
Gráfico Excel com eixo Y com altura dinâmica VBA. Segmentação de dados Excel, tabela dinâmica, dashboard.
Especialista em Excel
Objetivo: Como criar um gráfico Excel com eixo Y com altura dinâmica VBA.
Este artigo tem como objetivo demonstrar como alterar os valores máximo e mínimo de um gráfico Excel de modo que o gráfico seja sempre apresentado da melhor forma.
No exemplo criado temos uma planilha simples com as vendas realizadas por dia por cada vendedor durante o ano de 2014.
Note que para as datas foram inclusos também os campos Dia, Mês e Ano, que utilizam as respectivas funções com os mesmos nome e utilizadas somente passando a data, o seu retorno são os campos homônimos aos seus nomes, e a sintaxe é a seguinte:
Para um valor de 02/01/2014 na célula A14:
- DIA(A14) -> 2
- MÊS(A14) -> 1
- ANO(A14) -> 2014
Estes campos são importantes para a criação da tabela dinâmica.
Na planilha Gráfico, foi criada uma tabela dinâmica com as seguintes configurações:
Caso não esteja familiarizado com o uso de tabelas dinâmicas sugiro que veja o artigo http://guiadoexcel.com.br/tabelas-dinamicas, pois o uso desta ferramenta abre várias possibilidades no Excel.
A tabela dinâmica criada fica no seguinte formato:
Clique sobre a mesma e na aba Inserir e selecione a opção gráfico de colunas 2D, o Excel irá criar um gráfico dinâmico com os dados criados.
Após a criação do gráfico insira as segmentações de dados clicando sobre Dia, depois Mês, Ano e Vendedor, veja neste artigo como criar segmentações de dados: http://guiadoexcel.com.br/segmentacao-de-dados-com-tabela-dinamica-excel-bi-excel-dashboards-excel.
As segmentações foram então ajustadas em torno do gráfico dinâmico, ficando da seguinte forma:
Clicando então na guia Desenvolvedor e no botão Visual Basic foi acessada a ferramenta de desenvolvimento VBA do Excel, selecionado o objeto Plan2 (Gráfico) e incluso o seguinte código fonte:
'Método disparado ativação da planilha, quando ativa realiza a atualização do gráfico
Private Sub Worksheet_Activate()
lsAtualizarGrafico
End Sub
'Função que calcula a altura do eixo Y
Private Sub lsAtualizarGrafico()
'Seleciona o gráfico
ActiveSheet.ChartObjects("Gráfico 1").Activate
'Seleciona o eixo Y do gráfico
ActiveChart.Axes(xlValue).Select
'O valor mínimo da escala do eixo Y recebe o valor mínimo da tabela dinâmica - 5%
ActiveChart.Axes(xlValue).MinimumScale = WorksheetFunction.Small(Sheets("Gráfico").Range("b35:z50"), 1) * 0.95
'O valor máximo da escala do eixo Y recebe o valor máximo da tabela dinâmica + 2%
ActiveChart.Axes(xlValue).MaximumScale = WorksheetFunction.Large(Sheets("Gráfico").Range("b35:z50"), 1) * 1.02
End Sub
'Método chamado em alterações realizadas na planilha
Private Sub Worksheet_Change(ByVal Target As Range)
lsAtualizarGrafico
End Sub
O código fonte incluso está devidamente comentado informando o que cada linha está realizando, mas efetivamente para desenvolver é necessário conhecimento em VBA.
Baixe o arquivo e veja o resultado final do projeto.
Planilha de Controle Financeiro no Excel
Tenha um controle bonito e completo do seu financeiro.
- Categorias e subcategorias já configuradas
- Planilhas separadas por tabela (configuração, lançamentos, resumo)
- Personalize com suas próprias categorias e ícones
Abraço
Marcos Rieper
Este conteúdo foi útil?
Continue lendo

Como Fazer Gráficos com Bordas Arredondadas no Excel
Aprenda como criar gráficos com bordas arredondadas no Excel passo a passo. Deixe seus dashboards mais modernos e profissionais.

Planilha Dashboard de Clima Excel Gratuito
Aprenda neste artigo como criar uma planilha de dashboard de clima no Excel passo-a-passo com download gratuito da planilha e vídeo-aula.

Como Criar Análises Interativas com Dashboards no Excel
Neste artigo você verá uma forma de criar análises interativas com dashboard no Excel usando a função COPILOT do Excel.







