限定しりとり

ひょっとしてものすごく簡単なことなのかもしれませんが行き詰っています。教えてください。
埋め込みグラフを3つ作成するマクロを記録しました。
それぞれのグラフに名前を付けて、名前を指定してグラフを選択したいのですが、作成時に
ActiveSheet.ActiveChart.Name = "●●●"
として
ActiveSheet.ChartObjects("●●●").select
としてもうまくいきません。
根本的に何かちがうのでしょうか。
よろしくお願いします。

A 回答 (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


頑張ってください。
    • good
    • 0
この回答へのお礼

10日も経ってからのお礼になってしまいました。
言い訳ですが、家族の骨折さわぎがありましてしばらくサイトを見ていませんでした。本当にすみません。
ご回答いただいた通り実行したところうまくいきました。
助けていただき有難うございました。

お礼日時:2003/02/28 18:30

グラフを作成したときに自動的につく名前を Chart1 とすると、



ActiveSheet.Shapes("Chart1").Select
Selection.Name = "xxx"

ActiveSheet.ChartObjects("xxx").Active
などで、名前をつけたグラフを指定できますよ。

この回答への補足

回答いただき有難うございます。
作成時に自動的につく名前なんですが、グラフを何度か作成・削除をしていると今何番のグラフになっているのかわからなくなってしまいます。

>ActiveSheet.Shapes("Chart1").Select

この"Chart1"の部分をVBAの記述で取得する方法はないものかと…。
つたない説明ですみません。
もしご理解いただけたらお教え願えないでしょうか。

補足日時:2003/02/15 08:43
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!