即効テクニック |
フォームやコントロールにフォーカスがある状態で、ANSI文字コードに対応するキーまたはキーの組み合わせを押して離したときに発生するイベント"OnKeyPress/キー入力時"を利用すると、キーボードから入力された1文字を取得することができます。 サンプルは、フォームを新規に作成して、フォームのプロパティのイベントタブにある、「キー入力時」にイベントプロシージャを指定して、作成したプロシージャです。 ●サンプル● Private Sub Form_KeyPress(KeyAscii As Integer) MsgBox Chr(KeyAscii) End Sub フォームをフォームビューで表示して、キーボードから文字を入力すると、入力した文字がメッセージボックスに表示されます。 Chr関数は、指定した文字コードに対応する文字を示す文字列型(String)の値を返します。 次のサンプルでは、Hex関数を使って、イミディエイトウィンドウに指定した値を16進数で表した文字列型(String)を表示しています。 ●サンプル● Private Sub Form_KeyPress(KeyAscii As Integer) Debug.Print "入力した文字は「" & _ Chr(KeyAscii) & " = " & _ Hex(KeyAscii) & _ "」です。" End Sub イミディエイトウィンドウには、次のように表示されます。 入力した文字は「a = 61」です。 入力した文字は「b = 62」です。 入力した文字は「c = 63」です。 入力した文字は「A = 41」です。 入力した文字は「B = 42」です。 入力した文字は「C = 43」です。