「powerpoint VBA グラフの値 変更」
という検索キーワードでのアクセスに気が付きました。
参考になりそうな、シンプルなサンプルをご紹介しておきます。
グラフの値を変更するサンプルマクロ
アクティブプレゼンテーションの、先頭スライドのコンテンツプレースホルダーにグラフを作成した状態で、以下のSubプロシージャを実行してください。
Dim cht As Chart
Set cht = ActivePresentation.Slides(1).Shapes(2).Chart
cht.ChartData _
.Workbook.WorkSheets(1).Range("B2").Value = 10
End Sub
下図のように「カテゴリ1」の「系列1」のデータが10に変更されます。
グラフの値を変更するためのオブジェクトモデル
PowerPoint VBAで、グラフのデータはChartDataオブジェクトを利用して操作できます。
ChartDataオブジェクトに用意されているWorkbookプロパティを使うと、Workbookオブジェクトを取得できます。
オブジェクトブラウザでは「As Object」と定義されていますがローカルウィンドウで確認すればWorkbookオブジェクトが返されることを確認できます。
Workbookオブジェクト以下のオブジェクトは、Excel VBAのオブジェクトモデルをご存知の方ならおなじみの階層構造です。
PopwerPointからVBEを表示して、オブジェクトブラウザで「workbook」を検索しても、ChartDataオブジェクトのWorkbookプロパティしか見つかりませんけれど、
上記のコードで問題なく動作します。
オブジェクトブラウザでは表示されないWorkbookオブジェクト以下のオブジェクトも、拙著『いちばんやさしいExcel VBAの教本』でも多用しているローカルウィンドウを使えば、下図のとおり確認できます。
Home » パワーポイントマクロ・PowerPoint VBAの使い方 » グラフ・Chart » PowerPoint VBAでグラフの値を変更する