【KeyCode】どのキーが押されたか取得する



【KeyCode】どのキーが押されたか取得する

どうも、takaです!(^^)!今回はどのキーが押されたか判定するときなどに使う【KeyCode】についてご紹介していきます( ^ω^ )

KeyCode(キーコード)はキーボードのキーに割り振られているコードでVBAではこのコードでどのコードが押されたのか取得することができます( ^ω^ )

よく使われるのが TextboxコントロールなどにあるKeyDownイベントなどです。
「KeyCode」の引数の値を調べることによってキーボードから押されたキーのキーコードを取得してキー操作によるプログラムの制御が可能になります(^^♪

KeyCodeの使用例

では実際に使用例をご紹介しますが、実は前回の【Listbox(リストボックス)を検索する方法】のなかでもう使用しているんです(;^ω^)

下記のコードは前回のサンプルです、サンプルの中の三行目に書いてある【If KeyCode <> 13 Then Exit Sub 】がコードになります。

KeyCode 13はEnter(エンター)を表すコードです。なので【If KeyCode <> 13 Then Exit Sub 】は【Enterキー以外が押されたら処理をしない】というような条件付けをしていることになります。

【If KeyCode <> 32 Then Exit Sub】のようにKeyCodeの数値を変えれば別のキーにしか反応しなくなります(32はスペースキーです)

KeyCode(キーコード)一覧

KeyCodeはたくさんあるのでKeyCode一覧をMicrosoftより引用させていただきました。※翻訳はGooglechromeの翻訳ツールを使用しています。

定数説明
vbKeyLButton1左マウスボタン
vbKeyRButton2マウスの右ボタン
vbKeyCancel3CANCELキー
vbKeyMButton4マウスの中ボタン
vbKeyBack8バックスペースキー
vbKeyTab9Tabキー
vbKeyClear12クリアキー
vbKeyReturn13Enterキー
vbKeyShift16シフトキー
vbKeyControl17CTRLキー
vbKeyMenu18MENUキー
vbKeyPause19PAUSEキー
vbKeyCapital20CAPS LOCKキー
vbKeyEscape27ESCキー
vbKeySpace32スペースバーキー
vbKeyPageUp33ページアップキー
vbKeyPageDown34ページダウンキー
vbKeyEnd35ENDキー
vbKeyHome36HOMEキー
vbKeyLeft37左矢印キー
vbKeyUp38上向き矢印キー
vbKeyRight39右矢印キー
vbKeyDown40下矢印キー
vbKeySelect41SELECTキー
vbKeyPrint42PRINT SCREENキー
vbKeyExecute43EXECUTEキー
vbKeySnapshot44SNAPSHOTキー
vbKeyInsert45INSキー
vbKeyDelete46DELキー
vbKeyHelp47HELPキー
vbKeyNumlock144NUM LOCKキー

 

KeyZを介したKeyAはASCII同等物と同じです: ‘A’から ‘Z’

定数説明
vbKeyA65Aキー
vbKeyB66Bキー
vbKeyC67Cキー
vbKeyD68Dキー
vbKeyE69Eキー
vbKeyF70Fキー
vbKeyG71Gキー
vbKeyH72Hキー
vbKeyI73私はキー
vbKeyJ74Jキー
vbKeyK75Kキー
vbKeyL76Lキー
vbKeyM77Mキー
vbKeyN78Nキー
vbKeyO79Oキー
vbKeyP80Pキー
vbKeyQ81Qキー
vbKeyR82Rキー
vbKeyS83Sキー
vbKeyT84Tキー
vbKeyU85Uキー
vbKeyV86Vキー
vbKeyW87Wキー
vbKeyX88Xキー
vbKeyY89Yキー
vbKeyZ90Zキー

 

Key0からKey9は、ASCII同等物と同じです: ‘0’から ‘9

定数説明
vbKey0480キー
vbKey1491キー
vbKey2502キー
vbKey3513キー
vbKey4524キー
vbKey5535キー
vbKey6546キー
vbKey7557キー
vbKey8568キー
vbKey9579キー

 

テンキーパッドのキー

定数説明
vbKeyNumpad0960キー
vbKeyNumpad1971キー
vbKeyNumpad2982キー
vbKeyNumpad3993キー
vbKeyNumpad41004キー
vbKeyNumpad51015キー
vbKeyNumpad61026キー
vbKeyNumpad71037キー
vbKeyNumpad81048キー
vbKeyNumpad91059キー
vbKeyMultiply106MULTIPLICATION SIGN(*)キー
vbKeyAdd107プラス記号(+)キー
vbKeySeparator108ENTER(キーパッド)キー
vbKeySubtract109マイナス記号( – )キー
vbKeyDecimal110DECIMAL POINT(。)キー
vbKeyDivide111DIVISION SIGN(/)キー

 

ファンクションキー

定数説明
vbKeyF1112F1キー
vbKeyF2113F2キー
vbKeyF3114F3キー
vbKeyF4115F4キー
vbKeyF5116F5キー
vbKeyF6117F6キー
vbKeyF7118F7キー
vbKeyF8119F8キー
vbKeyF9120F9キー
vbKeyF10121F10キー
vbKeyF11122F11キー
vbKeyF12123F12キー
vbKeyF13124F13キー
vbKeyF14125F14キー
vbKeyF15126F15キー
vbKeyF16127F16キー

Microsoftより引用

ファイルやコードの利用について

サンプルコードなどは当サイトの免責事項をよくお読みになってからお使いください。

Twitterフォロー

 

ブログの更新通知を受け取るにはこちらにはこちら↓Twitterもやってます(^^♪Excelについてはあまり触れませんがブログの更新のお知らせはツイートしています(^^♪

Twitterフォロー

 



コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

ABOUTこの記事をかいた人

あることがキッカケでVBAを独学で勉強している、非IT企業の会社員。 今はVBAで出来ることを模索しながら別の開発言語の取得、基本情報技術者試験合格が目標