プロが教える店舗&オフィスのセキュリティ対策術

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

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"'適当な名前
で設定する必要があります。
    • good
    • 1

1、グラフを右クリックして[グラフ1_Click]のマクロを指定。


2、マクロにコードを記述。

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

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

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

お礼日時:2008/04/24 17:51

MouseDownイベントがあります。

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

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

このQ&Aを見た人はこんなQ&Aも見ています