Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » ChartObjectのインデックス番号を取得する

ChartObjectのインデックス番号を取得する

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

「chartobjectインデックス番号を調べる」
といった検索で、このサイト・インストラクターのネタ帳へのアクセスが時折あります。

「excelvba chartobjectsメソッドの引数のインデックス番号の取得は」
という検索キーワードも見かけます。

Excel VBA(Visual Basic for Applications)で、ワークシート上の埋め込みグラフを取得する際に、「ActiveSheet.ChartObjects(1)」といったオブジェクト式を利用します。

VBAでChartObjectのインデックス番号を

このWorksheet.ChartObjectsメソッドの引数に指定する、インデックス番号の調べ方を探していたのが、
「chartobjectインデックス番号を調べる」
といった検索キーワードでしょう。

ChartObjectオブジェクトのインデックス番号を取得するサンプルマクロ

インデックス番号を調べたい埋め込みグラフを選択しておいて、以下のマクロを実行すると、アクティブな埋め込みグラフのインデックス番号がメッセージボックスに表示されます。

Sub ChartObjectのインデックス番号を取得する()
 MsgBox ActiveChart.Parent.Index
End Sub

ChartObjectとChart

ChartObjectオブジェクトとChartオブジェクトの関係は、ちょっとややこしくなっています。

Worksheetオブジェクトから階層関係を図解すると、以下のような関係です。

Worksheetオブジェクト
  └ ChartObjectsコレクションオブジェクト
    └ ChartObjectオブジェクト
      └ Chartオブジェクト

ActiveChartプロパティは、アクティブなグラフを表すChartオブジェクトを返します。

VBAでChartObjectのインデックス番号を

ChartオブジェクトのParentプロパティを使うと、

VBAでChartObjectのインデックス番号を

階層関係の親に該当するChartObjectオブジェクトを取得することができます。

このChartオブジェクトのParentプロパティで取得した、ChartObjectオブジェクトのIndexプロパティで、

VBAでChartObjectのインデックス番号を

ChartObjectオブジェクトのインデックス番号を取得しているのが、上記マクロで利用している「ActiveChart.Parent.Index」というオブジェクト式です。

最終更新日時:2022-06-22 16:23

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » ChartObjectのインデックス番号を取得する

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

検索


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

.