VBA_グラフに名前を設定

作成する時に、グラフのサイズや位置設定を行いたかったが
作成時の Chart を操作するのではなく、ChartObject を使うらしい。

ChartObject(1).Name

この (1) は、シートに含まれる埋め込みグラフのインデックス番号。
シートに ChartObject が 1 つしかないなら、名前つけずに
ChartObject (1) のままグラフ移動など行って問題ないかな。

 

Chart が、グラフ本体
ChartObject が、グフラフが入っている ( 枠 ? ) のようなもの。

 

<< 構造 >>
ChartObject ( 埋め込みグラフの枠 )
    ┃
    ┣ Chart ( グラフ本体 )
    ┗ Shapre  Range ( 描画領域 )

 

グラフ移動・削除などは、ChartObject を操作。
系列やタイトル・データなど操作する為に、Chart オブジェクトを特定する時も
ChartObject から書く。「 ChartObject(1).Chart 」と記述。

Chart オブジェクトにも Name プロパティはあるが、これを管理するのは稀。
なお、これは取得のみ。設定は出来ない。

 

ex )
棒グラフを生成して testChart という名前を設定。

Sub test01()
    Workbooks.Open ("対象操作のファイルのフルパス")
    Worksheets("Sheet1").Activate

    With ActiveSheet.Shapes.AddChart.Chart
        .ChartType = xlColumnClustered
        .SetSourceData Range("A1:B4")
    End With
   
    With ActiveSheet.ChartObjects(1)
        .Name = "testChart"
    End With
End Sub

 

こちらから。
http://officetanaka.net/excel/vba/graph/05.htm
https://www.officepro.jp/excelvba/chart/index4.html
https://qiita.com/paty-fakename/items/c82ed27b4070feeceff6

以上。

--Memo--

┃(たて)
┣(たてみぎ)
┛(みぎした)
┏┳━┓(ふとわく)