Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » VBAでグラフオブジェクト・埋め込みグラフの名前を取得する

VBAでグラフオブジェクト・埋め込みグラフの名前を取得する

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

VBAでグラフオブジェクト・埋め込みグラフの名前を取得する

「vba グラフオブジェクトの名前を取得する」
という検索キーワードに気づきました。

グラフオブジェクト・埋め込みグラフの名前を取得するExcel VBAのコードを探していらした方による検索でしょう。

[スポンサードリンク]

アクティブシート上のグラフオブジェクトの名前を取得するサンプルマクロ

以下のSubプロシージャを実行すると、アクティブなシート上に存在するグラフオブジェクトの名前が順番にメッセージに表示されます。


Sub アクティブシート上の埋め込みグラフの名前をすべて取得する()
 Dim cho As ChartObject

 For Each cho In ActiveSheet.ChartObjects
  MsgBox cho.Name
 Next cho
End Sub

For Each~Nextループで、ChartObjectsコレクションオブジェクトに含まれる、ChartObjectオブジェクトを順番に取得して、その名前を取得してメッセージボックスに表示しています。

アクティブなグラフオブジェクトの名前を取得するサンプルマクロ

アクティブなグラフオブジェクトの名前を取得しようとして、戸惑う方が多いかもしれません。


Sub アクティブなグラフの名前を取得する()
 If ActiveChart Is Nothing Then
  MsgBox "グラフが選択されていません。"
 Else
  MsgBox ActiveChart.Parent.Name
 End If
End Sub

「ActiveChart.Name」というオブジェクト式で、グラフオブジェクトの名前を取得できると考えてしまう方もいらっしゃるようですが、ActiveChartオブジェクトで取得できるのはあくまでもChartオブジェクトです。

VBAでグラフオブジェクト・埋め込みグラフの名前を取得する

そのため「ActiveChart.Name」で取得できるのは「シート名 グラフ名」のような、名前になってしまいます。

Chartオブジェクトの親オブジェクトであるChartObjectオブジェクトを取得するためにParentプロパティを使っています。

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » VBAでグラフオブジェクト・埋め込みグラフの名前を取得する

TrackBack:0

TrackBack URL
[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » グラフ・Chart » VBAでグラフオブジェクト・埋め込みグラフの名前を取得する

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

検索

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

.