Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » グラフオブジェクト・ChartObjectをオブジェクト変数にセットする

グラフオブジェクト・ChartObjectをオブジェクト変数にセットする

対象:Excel2007, Excel2010, Excel2013, Windows版Excel2016

「excelvba グラフオブジェクトを変数に格納するには」
という検索で、このサイト・インストラクターのネタ帳へのアクセスがありました。

Excel VBA(Visual Basic for Applications)で、グラフオブジェクト(ChartObjectオブジェクト)を、

グラフオブジェクト・ChartObjectをオブジェクト変数にセットする

オブジェクト変数にセットするオブジェクト式について調べていた方による検索です。

ここではシンプルなプロシージャを3つご紹介しておきます。

名前を指定してChartObjectをオブジェクト変数にセットする

グラフの名前を指定して、アクティブなシート上のChartObjectオブジェクトをオブジェクト変数にするなら、以下のようなプロシージャです。

Sub グラフオブジェクトを変数にセットする_名前()
 Dim cho As ChartObject
 Set cho = ActiveSheet.ChartObjects("グラフ 1")
 Stop
End Sub

「グラフ 1」という名前のグラフが存在するときに、上記のマクロを実行すると、オブジェクト変数・choに、「グラフ 1」グラフを表す、ChartObjectオブジェクトがセットされます。

Stopステートメントでステップ実行になりますから、ローカルウィンドウで、オブジェクト変数・choにChartObjectオブジェクトがセットされていることをご確認ください。

インデックス番号を指定してChartObjectを変数にセットする

インデックス番号を使ってChartObjectオブジェクトを取得して、オブジェクト変数にセットする場合は以下のようなプロシージャです。

Sub グラフオブジェクトを変数にセットする_インデックス番号()
 Dim cho As ChartObject
 Set cho = ActiveSheet.ChartObjects(1)
 Stop
End Sub

上記のマクロを実行すると、アクティブなシートの一つ目のグラフを表すChartObjectオブジェクトが、オブジェクト変数・choにセットされます。

先のマクロと同じく、Stopステートメントの箇所でステップ実行になったら、ローカルウィンドウで、オブジェクト変数・choの中身を覗いてみてください。

アクティブなグラフを表すChartObjectをオブジェクト変数にセットする

以下のようなプロシージャで、アクティブなグラフオブジェクトを表すChartObjectオブジェクトが、オブジェクト変数・choにセットされます。

Sub グラフオブジェクトを変数にセットする_ActiveChart()
 Dim cho As ChartObject
 Set cho = ActiveChart.Parent
 Stop
End Sub

ActiveChartプロパティは、Chartオブジェクトを返すので、

グラフオブジェクト・ChartObjectをオブジェクト変数にセットする

ChartオブジェクトのParentプロパティで、ChartObjectオブジェクトを取得して、オブジェクト変数にセットしています。

最終更新日時:2022-10-01 16:12

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » グラフオブジェクト・ChartObjectをオブジェクト変数にセットする

「グラフ・Chart」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.