(VBA)Win32APIを使用してキーボードが押されたか判定する(※お宝さがしゲーム用)

その他

※Youtubeで解説している「お宝探しゲーム用」のためのコード紹介です。ご容赦ください。

キーが押されたか判定するコード

※無限ループになってるので終わりたい時はEscで終了してください。

Option Explicit
Declare PtrSafe Function GetAsyncKeyState Lib "User32.dll" (ByVal vKey As Long) As Long
Declare PtrSafe Sub Sleep Lib "kernel32.dll" (ByVal dwMilliseconds As Long)

Sub キーが押されたか判定()
    Do
        If GetAsyncKeyState(vbKeyLeft) <> 0 Then
            MsgBox "←キーが押されたよ"
        End If
        Sleep 100
        DoEvents
    Loop
End Sub

※PtrSafe はExcelが”64Bit版”の場合。32bitの場合は消してください。

GetAsyncKeyState()の引数はコチラを参考↓(まとめてくださりありがとうございます!!)

コメント

タイトルとURLをコピーしました