「chartarea サイズ VBA パワーポイント」
という検索キーワードでアクセスがあることに気がつきました。
PowerPoint VBAを使ってChartAreaの大きさを取得するには、どのようなコードを書けばいいのかを探していらしたのでしょうか。
ChartAreaのサイズを取得するサンプルマクロ
1枚目のスライドの2つ目のShapeにグラフが存在するプレゼンテーションファイルがアクティブな状態で、以下のSubプロシージャを実行してください。
With ActivePresentation.Slides(1).Shapes(2)
If Not .HasChart Then Exit Sub
With .Chart.ChartArea
Debug.Print .Height & " × " & .Width
End With
End Sub
ChartAreaのサイズが、「高さ × 横幅」の形式でイミディエイトウィンドウに出力されます。
サンプルマクロで行っている処理
PowerPoint VBAでChartAreaを取得するには、以下のような階層を辿ります。
Presentation (ActivePresentationで取得) └ Slide (.Slides(1)で取得) └ Shape (.Shapes(2)で取得) └ Chart └ ChartArea
以上のようなオブジェクトの階層を辿って取得した、ChartAreaオブジェクトに用意されているHeightプロパティで高さを、
Widthプロパティで横幅を取得、出力しているのが、
上記のコード
With ActivePresentation.Slides(1).Shapes(2) With .Chart.ChartArea Debug.Print .Height & " × " & .Width
です。
1枚目スライドの2つ目のShapeにグラフが存在しないときに実行時エラーが発生しないように、拙著『いちばんやさしいPowerPoint VBAの教本』の「Lesson 41 Has〇〇プロパティもShapeの種類に関係します」でも紹介している、ShapeオブジェクトのHasChartプロパティを使った
グラフが存在するかどうか判定する処理を入れています。
With ActivePresentation.Slides(1).Shapes(2) If Not .HasChart Then Exit Sub
最終更新日時:2022-02-16 13:45
Home » パワーポイントマクロ・PowerPoint VBAの使い方 » グラフ・Chart » ChartAreaのサイズをPowerPoint VBAで