- ベストアンサー
VBAでグラフに名前をつける方法
ひょっとしてものすごく簡単なことなのかもしれませんが行き詰っています。教えてください。 埋め込みグラフを3つ作成するマクロを記録しました。 それぞれのグラフに名前を付けて、名前を指定してグラフを選択したいのですが、作成時に ActiveSheet.ActiveChart.Name = "●●●" として ActiveSheet.ChartObjects("●●●").select としてもうまくいきません。 根本的に何かちがうのでしょうか。 よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
アクティブなシート上のShapesの名称は、以下で取れます。 Dim wShape Dim wShapeNM() Dim wShapeCnt As Long For Each wShape In ActiveSheet.Shapes If Left(wShape.Name, 5) = "Chart" Then ReDim Preserve wShapeNM(wShapeCnt) wShapeNM(wShapeCnt) = wShape.Name wShapeCnt = wShapeCnt + 1 End If Next 頑張ってください。
その他の回答 (1)
- Taketoshi
- ベストアンサー率41% (23/56)
グラフを作成したときに自動的につく名前を Chart1 とすると、 ActiveSheet.Shapes("Chart1").Select Selection.Name = "xxx" ActiveSheet.ChartObjects("xxx").Active などで、名前をつけたグラフを指定できますよ。
補足
回答いただき有難うございます。 作成時に自動的につく名前なんですが、グラフを何度か作成・削除をしていると今何番のグラフになっているのかわからなくなってしまいます。 >ActiveSheet.Shapes("Chart1").Select この"Chart1"の部分をVBAの記述で取得する方法はないものかと…。 つたない説明ですみません。 もしご理解いただけたらお教え願えないでしょうか。
お礼
10日も経ってからのお礼になってしまいました。 言い訳ですが、家族の骨折さわぎがありましてしばらくサイトを見ていませんでした。本当にすみません。 ご回答いただいた通り実行したところうまくいきました。 助けていただき有難うございました。