プロが教えるわが家の防犯対策術!

VBA初心者です。
エクセル上で、その時点でアクティブなグラフを移動させたいのですが・・・

Dim myName
myName = ActiveChart.Name
ActiveSheet.Shapes(myName).IncrementLeft 10.00

これを実行すると「指定した名前のアイテムが見つかりませんでした」と、エラーがでます。
おそらく、Shapes("グラフ 1")としなければならないのに、Shapes("Sheet1 グラフ 1")となっているためと思われますが・・・?
このエラーをなくすには、どうすれば良いのでしょうか?よろしくお願いします。

A 回答 (1件)

文章のままからすれば、


  Dim myName As String
  myName = ActiveChart.Name
  myName = Mid$(myName, InStr(myName, " ") + 1)
'   ↑ここです。
   ActiveSheet.Shapes(myName).IncrementLeft 10#

グラフ 1というのは、ローカルネームですから、利用価値が低いですね。
    • good
    • 0
この回答へのお礼

お返事、ありがとうございます。正常に動作することを確認しました!なにぶん初心者なもので、これから命令の意味をヘルプで調べてみます。ありがとうございました!

お礼日時:2005/05/30 14:49

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