Excel VBA Macro ・ その他 ・ FAQ
任意のセルをクリックすると1を加えるようにするには?
Question 1.2/span>
任意のセルをクリックすると、1を加えるようにしたいのです。ボタンをつかわないで、本当はロータスのほうで、やりたかったのですが
Answer
Copyright (C) 1998.2.15 永井善王
私はこれについてあまり知らなかったので、一応調べた結果を十分ではないかも知れませんがご回答します。
エクセル95 VBAでは、マウスがクリックされた時に動作するイベントプロシージャは、作れないのではないでしょうか?
OnEntryプロパテイを使って次のように作ると、一応似たような動作をするけど、何かキー(スペースでもよいが)を押してから、他のセル上に
マウスを移動させて押す必要があり、何もキーを押さないで、他のセル上でマウスを押してもイベントは発生しません。
Sub どれかのキーを押してからマウスをクリックすると()
ActiveWorkbook.Worksheets("Sheet1").OnEntry="1を加える" '(注)
End Sub
Sub 1を加える()
Cells(1,1).Value=Cells(1,1).Value+1 'A1セルに1を加える
End Sub
上記の(注)の1行をAuto_Openプロシージャに組み込んでおけば、ブックを開けば機能するようになります。
なお、この他の方法としては、ChangeかSelectionChageを利用する方法があるそうですが、TAB、矢印キーでもイベントが発生してしまいます。
VBのMouseDownイベントやMouseUpイベントを利用すればできるでしょうが。