質問: excelのシート上のshapeにイベントは設定できる? タイトル通りですが、shapeにイベントを発生させることは できるのでしょうか? click、mousemove とかですが・・・ よろしくお願いします。
回答: こんばんは。 私は、うまく言葉では説明できないので、以下のようなサンプルを作ってみました。 ".onaction" で設定させます。ただ、これが、sheet1 などのローカルモジュールですと、 マクロ名は、それぞれのシートを指定しないといけません。 '標準モジュール sub testshape() dim x1 as double, y1 as double dim x2 as double, y2 as double dim dwidth as double, dheight as double 'アクティブセルから、四角形の設定 with activecell x1 = .left y1 = .top end with with activecell.offset(5, 3) x2 = .left y2 = .top end with dwidth = x2 - x1 dheight = y2 - y1 with activesheet.shapes.addshape(msoshaperectangle, x1, y1, dwidth, dheight) .onaction = "subtest1" end with end sub '-------------------------------- sub subtest1() msgbox "subtest1マクロが実行されました", 64 end sub