24.08.2020 Views

Programando o Excel ® Vba Para Leigos - 2ª Ed 2013 NoDRM (1)

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Capítulo 14: Exemplos de Programação em VBA 223

dados do gráfico é de código sólido, portanto, você não usaria isto em uma

macro de criação de gráfico de objetivos gerais.

Entretanto, examinar o código gravado revela algumas coisas que

podem ser úteis ao escrever as suas próprias macros relacionadas com

gráfico. Se estiver curioso, eis uma versão feita à mão daquela macro

que cria um gráfico a partir de uma faixa selecionada:

Sub CreateAChart()

Dim ChartData As Tange

Dim ChartShape As Shape

Dim NewChart As Chart

‘ Create object variables

Set ChartData = ActiveWindow.RangeSelection

Set ChartShape = ActiveSheet.Shapes.AddChart

Set NewChart = ChartShape.Chart

‘ Adjust the chart

With NewChart

.ChartType = xlColumnClustered

.SetSourceData Source:=Range(ChartData.Address)

.Legend.Delete

.SeriesCollection(1).Format.Shadow.Type = _

msoShadow21

End With

End Sub

Se precisar escrever macros VBA que manipulem gráficos, você precisa

entender alguma terminologia. Um gráfico embutido em uma planilha é

um objeto ChartObject. Você pode ativar um ChartObject exatamente

como ativa uma planilha. A seguinte declaração ativa o ChartObject

chamado Chart 1:

ActiveSheet.ChartObjects(“Chart 1”).Activate

APAPO DE ESPECIALIST

Depois de ativar o gráfico, você pode referenciá-lo em seu código VBA

como o ActiveChart. Se o gráfico estiver em uma planilha de gráfico

separada, ele se torna o gráfico ativo assim que você ativar a sua

respectiva planilha.

Um ChartObject também é um Shape, que pode ser um pouco confuso.

Na verdade, quando o seu código VBA criar um gráfico, ele começa

acrescentando um novo Shape. Você também pode ativar um gráfico,

selecionando o objeto Shape que contém o gráfico:

ActiveSheet.Shapes(“Chart 1”).Select

Eu prefiro usar o objeto ChartObject em meu código, apenas para

deixar perfeitamente claro que estou trabalhando com um gráfico.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!