|
すいません、初心者で切り貼りでプログラムを組んでいます。
キー入力したらそれを確認するマクロをネット上で見つけて作成しました。
以下の通りなのですが、
---------------------------------------------------------------------------
Declare Function GetAsyncKeyState Lib "user32.dll" (ByVal vKey As Long) As Long
Declare Sub Sleep Lib "kernel32.dll" (ByVal dwMilliseconds As Long)
Do
If GetAsyncKeyState(37) <> 0 Then MsgBox "←キーが押されました"
If GetAsyncKeyState(38) <> 0 Then MsgBox "↑キーが押されました"
If GetAsyncKeyState(39) <> 0 Then MsgBox "→キーが押されました"
If GetAsyncKeyState(40) <> 0 Then MsgBox "↓キーが押されました"
Call Sleep(1)
DoEvents
Loop
---------------------------------------------------------------------------
当初は問題なく起動していたのですが、なんども繰り返し操作していると、エラー表示後excellが強制終了されてしまいます。
ネットでいろいろ検索をしてみると、どうやら
『Windows7が64ビット版でマクロの中で32ビット用APIを使用している』
ことが原因のようですが、私の少ない知識では解決策がみつかりません。
64ビット版でも問題の無いプログラムを教えていただけませんでしょうか。
宜しくお願い致します。
|
|