次の方法で共有


Report.KeyPress イベント (Access)

KeyPress イベントは、レポートにフォーカスがある状態で、ANSI 文字コードに対応するキーまたはキーの組み合わせを押して離したときに発生します。 このイベントは、マクロで "SendKeys/キー送信" アクションを使うか、Visual Basic コードで SendKeys ステートメントを使って、レポートにキーストロークを送信した場合にも発生します。

構文

KeyPress (KeyAscii)

Report オブジェクトを表す変数。

パラメーター

名前 必須 / オプション データ型 説明
KeyAscii 必須 整数型 (Integer) 数値で表される ANSI キー コードを返します。 引数 KeyAscii は参照によって渡され、これを変更すると、異なった文字がオブジェクトに送られます。 引数 KeyAscii に 0 を設定すると、キーストロークがキャンセルされ、オブジェクトはキーが押されたことを認識しません。

注釈

KeyPress イベントが発生したときに、マクロまたはイベント プロシージャを実行するには、 OnKeyPress プロパティをマクロ名または "[Event Procedure]"/"[イベント プロシージャ]" に設定します。

レポートの " KeyPreview /キーボードイベント取得" プロパティを [Yes/はい] に設定しておくと、コントロールに発生するイベントも含めて、レポートはすべてのキーストロークを受け取ります。 この設定では、すべてのキーボード イベントはまずレポートに対して発生し、次にフォーカスのあるコントロールに対して発生します。 どのコントロールにフォーカスがあっても、レポートで押された特定のキーに応答することができます。 たとえば、キーの組み合わせ Ctrl + X でレポートに対して常に同じアクションを実行できます。

ANSI キーを長押しすると、 KeyDown イベントと KeyPress イベントが、キーを離すまで繰り返し (KeyDownKeyPressKeyDownKeyPress など)、 KeyUp イベントが発生します。

KeyPress イベントには、印刷可能なキーボード文字、Ctrl キーと標準アルファベットまたは特殊文字の文字、Enter キーまたは Backspace キーを組み合わせることができます。 KeyDown イベント プロシージャと KeyUp イベント プロシージャを使用して、KeyPress イベントで認識されないキーストローク (ファンクション キー、ナビゲーション キー、キーボード修飾子 (Alt キー、Shift キー、Ctrl キー) との組み合わせなど) を処理します。 KeyPress イベントでは、 KeyDown イベントおよび KeyUp イベントとは異なり、キーストロークの状態は示されず、ユーザーが押したキーまたはキーの組み合わせに対応する ANSI 文字が示されます。

KeyPress イベントでは、各アルファベット文字の大文字と小文字は、別のキーコード、つまり 2 つの別の文字として扱われます。

注:

Backspace キーは ANSI 文字セットの一部ですが、Delete キーは含まれません。 Backspace キーを使用してコントロール内の文字を削除すると、 KeyPress イベントが発生します。Delete キーを使用する場合は使用しません。

KeyDown イベントと KeyPress イベントは、ANSI キーを押したり送信したりすると発生します。 KeyUp イベントは、キーを押したり送信したりすることによってコントロールに対するイベントが発生した後に発生します。 キーストロークによってフォーカスが移動した場合は、移動前のコントロールに対して KeyDown イベントが発生し、移動後のコントロールに対して KeyPress イベントと KeyUp イベントが発生します。

サポートとフィードバック

Office VBA またはこの説明書に関するご質問やフィードバックがありますか? サポートの受け方およびフィードバックをお寄せいただく方法のガイダンスについては、Office VBA のサポートおよびフィードバックを参照してください。