{"id":554,"date":"2009-04-05T02:48:30","date_gmt":"2009-04-05T05:48:30","guid":{"rendered":"http:\/\/blog.mprinformatica.com.br\/2009\/04\/05\/como-ajustar-a-escala-do-eixo-de-um-grafico-em-vba\/"},"modified":"2009-04-05T02:48:30","modified_gmt":"2009-04-05T05:48:30","slug":"como-ajustar-a-escala-do-eixo-de-um-grafico-em-vba","status":"publish","type":"post","link":"https:\/\/www.mprinformatica.com.br\/blog\/2009\/04\/05\/como-ajustar-a-escala-do-eixo-de-um-grafico-em-vba\/","title":{"rendered":"Como ajustar a escala do eixo de um gr\u00e1fico em VBA"},"content":{"rendered":"<p>Gr\u00e1ficos s\u00e3o excelentes ferramentas para an\u00e1lise de dados, eles fornecem uma excepcional vis\u00e3o qualitativa de um fen\u00f4meno a ser estudado. Algumas vezes, por\u00e9m, temos que ajustar a escala do gr\u00e1fico para que possamos observar o trecho que nos interessa, nada que n\u00e3o se possa fazer configurando os valores m\u00ednimo e m\u00e1ximo dos eixos, mas e se houvesse uma maneira mais r\u00e1pida de fazer isso?<\/p>\n<p>Essa maneira mais r\u00e1pida existe e pode ser feita com aux\u00edlio do VBA. Para exemplificar vamos apresentar um exemplo semelhante ao que apresentamos em nosso curso de VBA para Excel (http:\/\/www.mprinformatica.com.br\/vbaexcel2007.html). Considere um gr\u00e1fico, chamado &#8220;Gr\u00e1fico 1&#8221; que est\u00e1 dentro da planilha &#8220;Plan1&#8221;. Ele representa uma fun\u00e7\u00e3o de segundo grau, a famosa par\u00e1bola (y=ax2 + bx + c) , cujos coeficientes <em>a<\/em>, <em>b<\/em> e <em>c<\/em> est\u00e3o nas c\u00e9lulas A5, B5 e C5 respectivamente. Os pontos da fun\u00e7\u00e3o est\u00e3o no intervalo B7:V8. Veja a figura abaixo:<\/p>\n<p><img decoding=\"async\" src=\"http:\/\/www.mprinformatica.com.br\/blog\/wp-content\/photos\/planilhacomgrafico.gif\" \/><\/p>\n<p>Observe como est\u00e1 a f\u00f3rmula na c\u00e9lula B8, que depois foi copiada para as outras c\u00e9lulas na linha 8. Note que tamb\u00e9m j\u00e1 foram inseridos tr\u00eas bot\u00f5es. Foram inseridos pela guia Desenvolvedor (se ela n\u00e3o estiver aparecendo Clique no bot\u00e3o do Office, Op\u00e7\u00f5es do Excel, Mais Usados e ative o item Mostrar guia Desenvolvedor na faixa de Op\u00e7\u00f5es), Inserir \/ Bot\u00e3o de Comando (ActiveX).<\/p>\n<p>Bot\u00e3o da esquerda: (Name) = cmdMenos ; Caption = < Bot\u00e3o do meio: (Name) = cmdAutom\u00e1tico ; Caption = Autom\u00e1tico\nBot\u00e3o da esquerda: (Name) = cmdMais ; Caption = ><\/p>\n<p>Enquanto estiver criando os c\u00f3digos, mantenha o Modo de Design ativado na guia Desenvolvedor.<\/p>\n<p>Mostrarei o c\u00f3digo para o bot\u00e3o cmdMenos, realiza um Zoom na escala do eixo X. Para os demais bot\u00f5es o c\u00f3digo \u00e9 semelhante e pode ser obtido fazendo download do arquivo (<a href=\"http:\/\/www.mprinformatica.com.br\/download\/Ajuste%20do%20eixo%20X%20em%20um%20grafico%20de%20dispersao.xlsm\">clique aqui para download<\/a>). Estando no Modo de Design, d\u00ea um clique duplo no bot\u00e3o da esquerda para editar o c\u00f3digo VBA.<\/p>\n<p>&#8216;Reduz a dist\u00e2ncia entre o m\u00e1ximo e o m\u00ednimo pela metade<br \/>\nPrivate Sub cmdMenos_Click()<br \/>\nDim Grafico As ChartObject<br \/>\nDim EixoX As Axis<br \/>\nDim Delta As Double<\/p>\n<p>&#8216; Vari\u00e1vel que aponta para o Gr\u00e1fico 1. Selecione o gr\u00e1fico e verifique o nome do seu objeto gr\u00e1fico na barra de nomes do Excel.<br \/>\nSet Grafico = Plan1.ChartObjects(&#8220;Gr\u00e1fico 1&#8221;)<br \/>\n&#8216; Objeto que aponta para o Eixo horizontal do gr\u00e1fico<br \/>\nSet EixoX = Grafico.Chart.Axes(xlCategory)<br \/>\nWith EixoX<br \/>\n    &#8216;A escala do eixo horizontal ir\u00e1 dobrar de tamanho, metade em dire\u00e7\u00e3o<br \/>\n    &#8216;ao m\u00ednimo, metade em dire\u00e7\u00e3o ao m\u00e1ximo<br \/>\n    Delta = (.MaximumScale &#8211; .MinimumScale) \/ 2<br \/>\n    &#8216;Altera o m\u00ednimo<br \/>\n    .MinimumScale = .MinimumScale &#8211; Delta<br \/>\n    &#8216;Altera o m\u00e1ximo<br \/>\n    .MaximumScale = .MaximumScale + Delta<br \/>\nEnd With<br \/>\n&#8216;Libera apontadores para os objetos<br \/>\nSet Grafico = Nothing<br \/>\nSet EixoX = Nothing<br \/>\nEnd Sub<\/p>\n<p>Ressalto que quando um gr\u00e1fico est\u00e1 dentro de uma planilha ele \u00e9 do tipo ChartObject, por\u00e9m se ele est\u00e1 separado da planilha \u00e9 do tipo Chart, ou seja a hierarquia de objetos muda.<br \/>\nFa\u00e7am download do arquivo, experimentem o exemplo e analisem o c\u00f3digo VBA.<\/p>\n<p>Carlos C\u00e9sar Tanaka<br \/>\nMPR Inform\u00e1tica<br \/>\n<a href=\"http:\/\/www.mprinformatica.com.br\/vbaexcel2007.html\">Cursos de Excel e VBA<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Gr\u00e1ficos s\u00e3o excelentes ferramentas para an\u00e1lise de dados, eles fornecem uma excepcional vis\u00e3o qualitativa de um fen\u00f4meno a ser estudado. Algumas vezes, por\u00e9m, temos que ajustar a escala do gr\u00e1fico para que possamos observar o trecho que nos interessa, nada que n\u00e3o se possa fazer configurando os valores m\u00ednimo e m\u00e1ximo dos eixos, mas e &hellip; <a href=\"https:\/\/www.mprinformatica.com.br\/blog\/2009\/04\/05\/como-ajustar-a-escala-do-eixo-de-um-grafico-em-vba\/\" class=\"more-link\">Continuar lendo <span class=\"screen-reader-text\">Como ajustar a escala do eixo de um gr\u00e1fico em VBA<\/span><\/a><\/p>\n","protected":false},"author":6,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[4,23],"tags":[31,35,43,59],"_links":{"self":[{"href":"https:\/\/www.mprinformatica.com.br\/blog\/wp-json\/wp\/v2\/posts\/554"}],"collection":[{"href":"https:\/\/www.mprinformatica.com.br\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.mprinformatica.com.br\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.mprinformatica.com.br\/blog\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/www.mprinformatica.com.br\/blog\/wp-json\/wp\/v2\/comments?post=554"}],"version-history":[{"count":0,"href":"https:\/\/www.mprinformatica.com.br\/blog\/wp-json\/wp\/v2\/posts\/554\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.mprinformatica.com.br\/blog\/wp-json\/wp\/v2\/media?parent=554"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.mprinformatica.com.br\/blog\/wp-json\/wp\/v2\/categories?post=554"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.mprinformatica.com.br\/blog\/wp-json\/wp\/v2\/tags?post=554"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}