Alterar Eixo Y do Gráfico Máximo e Mínimo no Excel VBA

Neste artigo você aprenderá como alterar o eixo y do gráfico no Excel utilizando VBA para ajustar os valores de máximo e mínimo no gráfico e também as Unidades.

Não é incomum a necessidade de termos alterar o eixo Y manualmente para ajustar a visualização do gráfico.

Dependendo o tipo de gráfico e a diferença do menor e do maior valor nós podemos ter uma visualização não muito adequada.

Veja o exemplo abaixo.

Ajustar o eixo y no Excel vba automaticamente 1

No primeiro gráfico, com fundo branco, nós temos a variação entre R$ 4,00 e R$ 13,00, que foi calculada automaticamente pelo Excel.

E no gráfico escuro temos o mesmo gráfico com ajustes com relação ao Eixo Y.

É nítido que a leitura do gráfico abaixo é muito mais fácil do que a leitura do primeiro gráfico.

O problema é que fazendo manualmente em um gráfico que muda com frequência, você terá que ajustar manualmente toda vez.

Veja como fazer manualmente e em seguida como fazer isto automaticamente.

Alterar o Máximo e Mínimo do Eixo Y do Excel Manualmente

Clique sobre o eixo Y com o botão direito.

Ajustar o eixo y no Excel vba automaticamente 2

É exibida na direita as configurações diversas que podemos aplicar no eixo Y. Iremos focar nas configurações de Opções de Eixo: Mínimo e Máximo.

Veja que ao lado das opções temos escrito Automático.

Assim, os valores automaticamente são automaticamente preenchidos quanto ao mínimo, máximo, unidades principal e secundária também.

Ajustar o eixo y no Excel vba automaticamente 3

Caso queira mudar estas unidades que foram calculadas, como no exemplo abaixo, temos 0,0 e 14,0, clique sobre o valor e altere.

O eixo Y do gráfico terá seus valores de máximo e mínimo alterados conforme digitou.

Ajustar o eixo y no Excel vba automaticamente 4

O resultado que temos é então um gráfico mais ajustado que permite uma melhor leitura das informações.

Ajustar o eixo y no Excel vba automaticamente 5

Proporção do Eixo Y no Gráfico

Um ponto importante a considerar quando alteramos o valor mínimo do eixo Y é a proporção.

A proporção seria termos por exemplo, um valor de uma série do gráfico de 10.000 e outro valor de 30.000, usando a configuração normal teríamos então uma série 3x maior do que a outra.

O mesmo não ocorre quando não iniciamos o nosso gráfico do zero.

Veja no exemplo abaixo aonde temos o menor valor de 8.100 e o maior de 20.200.

O valor de 20.200 é 249% maior do que 8.100, no entanto, o gráfico demonstra uma proporção visual de mais de 600%.

Por isso, é muito importante que ao alterar o eixo Y com relação ao valor mínimo, você tenha em mente que a proporção muda imediatamente.

A proporção só fica correta partindo do zero.

Mas como pudemos ver no começo, é necessário muitas vezes que o eixo Y seja alterado, para que o gráfico fique melhor visualmente ou até mesmo possa ser útil.

Veja na próxima sessão como alterar automaticamente o eixo Y no gráfico do Excel usando VBA.

Alterar o Eixo Y do Gráfico Excel Automaticamente com VBA

Para alterar o eixo Y do gráfico automaticamente nós podemos usar o VBA no Excel.

O VBA é uma linguagem de programação disponível no pacote Office e que pode ser usada em situações que precise para automatizar um processo por exemplo.

O primeiro passo é habilitar as macros no Excel. Siga este procedimento para habilitá-las: Habilitar macros no Excel

Agora pressione ALT+F11 ou na guia Desenvolvedor clique no botão Visual Basic, isso fará com que seja aberto o ambiente de programação.

Clique então em Inserir->Módulo e no módulo criado adicione o seguinte código:

Sub lsAtualizarEixo()
    On Error Resume Next

    ActiveSheet.ChartObjects("gvendas").Activate
    ActiveChart.Axes(xlValue).MinimumScale = WorksheetFunction.Round(WorksheetFunction.Min(ActiveSheet.Range("tVendas[Valor]")) * 0.8, -2)
    ActiveChart.Axes(xlValue).MaximumScale = WorksheetFunction.Round(WorksheetFunction.Max(ActiveSheet.Range("tVendas[Valor]")) * 1.2, -2)
End Sub

No código substitua as seguintes partes:

  • gvendas = Neste ponto é aonde você tem o nome do seu gráfico, para saber o nome dele ou mudar clique sobre o gráfico e na caixa de nome pegue este nome, coloque entre aspas duplas como no exemplo.
  • tVendas[Valor] = Aqui é o intervalo de valores do gráfico que iremos utilizar como base para o cálculo do menor e maior valor. Aqui usamos um intervalo de tabela, mas pode colocar também o intervalo da planilha, como por exemplo: F10:F28 ou senão o intervalo da sua tabela.

Entenda o código:

  • On Error Resume Next: Se ocorrer um erro passar para a próxima etapa.
  • ActiveSheet.ChartObjects(“gvendas”).Activate: Na planilha atual, seleciona o gráfico gvendas e o torna ativo.
  • ActiveChart.Axes(xlValue).MinimumScale = WorksheetFunction.Round(WorksheetFunction.Min(ActiveSheet.Range(“tVendas[Valor]”)) * 0.8, -2): Nesta linha de código é passado ao campo de mínimo valor do eixo Y o cálculo de valor mínimo usando a função MÍN do Excel e a função ARREDONDAR. Este valor é então o maior valor da série de dados do gráfico multiplicado por 0,8, ou seja 80% do maior valor para que caiba ajustado no gráfico.
  • ActiveChart.Axes(xlValue).MaximumScale = WorksheetFunction.Round(WorksheetFunction.Max(ActiveSheet.Range(“tVendas[Valor]”)) * 1.2, -2): Nesta linha de código é passado ao campo de mínimo valor do eixo Y o cálculo de valor máximo usando a função MÁX do Excel e a função ARREDONDAR. Este valor é então o maior valor da série de dados do gráfico multiplicado por 1,2, ou seja 120% do maior valor para que caiba ajustado no gráfico.

Nas linhas de atualização de mínimo e máximo você também pode alterar para não usar cálculos, mas sim usar dados de células preenchidas manualmente e atualizar com dados destas células.

Neste caso substitua o cálculo por ActiveSheet.Range(“A10”).value por exemplo. Substituindo A10 pela célula com o valor.

Para acionar este código pressione F5, e veja que o gráfico é alterado conforme o eixo Y.

Feche o Visual Basic e volte ao Excel.

Outra forma de atualizar estes dados é criar um botão ou imagem na planilha.

Desenhe uma imagem e clique com o botão direito sobre ela e selecione a opção Atribuir Macro.

Selecione a macro lsAtualizarEixo, agora ao clicar neste botão o eixo Y será atualizado com os cálculos dos dados atuais.

Download da Planilha Exemplo

Realize o download da planilha de atualização de eixo Y do gráfico deste artigo no botão abaixo. Basta se inscrever na nossa newsletter gratuita para o download automático.

Baixe a planilha


Marcos Rieper

Pai, marido, professor e consultor em Excel.

Obrigado por ler este artigo, este blog foi criado para difundir o conhecimento em Excel à todos.

Divulgamos novos artigos nas redes sociais, basta clicar nos ícones abaixo.

Excel não precisa ser complicado

Assine nossa newsletter e receba dicas práticas para dominar o excel