こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

Excel VBAでグラフをクリックした時走るイベントありますか?

Excel VBAで既存のグラフをクリックした時、その選択されたグラフを編集するソフトを作りたいのですが、グラフをクリックした走るイベントはありませんか?
イベントさえわかれば処理の書き方はわかります。

投稿日時 - 2008-04-24 15:54:17

QNo.3972720

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(3)

こんなのではどうでしょうか?

どこかの時点で
Sub setOnClick()
Dim c As ChartObject
For Each c In Sheet1.ChartObjects
c.OnAction = "chartOnClick"
Next
End Sub
を実行すれば、その時点でのすべてのグラフのクリックイベントが捕まえられるので、
Sub chartOnClick()
MsgBox Application.Caller
End Sub
で、どのグラフがクリックされたかわかります。

p.s.
上はchartOnClickが標準モジュールにある場合で、Sheet1のイベントを呼ぶ場合は、
c.OnAction = "Sheet1.chartOnClick"'適当な名前
で設定する必要があります。

投稿日時 - 2008-04-25 06:57:48

1、グラフを右クリックして[グラフ1_Click]のマクロを指定。
2、マクロにコードを記述。

Sub グラフ1_Click()
  MsgBox "AAA"
End Sub

エクセルは操作したこともない門外漢ですが・・・。
一応、これでグラフをクリックすればメッセージボックスが表示されました。

投稿日時 - 2008-04-24 16:44:34

お礼

回答ありがとうございます。
決まったグラフでしたら教えていただいた通りでできるのですが、今回は不特定多数のグラフがあります。
どのグラフをクリックしても同じように処理できるようにしたい為マクロの登録ですとユーザーの手間になってしまうので避けたいのです。
説明不足で申し訳ありません。
マクロの記録以外でないでしょうか?

投稿日時 - 2008-04-24 17:51:09

ANo.1

MouseDownイベントがあります。私はOffice2003を使っていますが、左右のボタンはイベントが発生します。中ボタンは発生しませんでした。

投稿日時 - 2008-04-24 16:35:32

あなたにオススメの質問