- ベストアンサー
Access2000VBAでEscキーを禁止!
Access2000VBAでEscキーを2回押すと入力していた内容が消えたんです。 なぜ?どうして?教えてください!ぜひお願いします。 出来れば「Esc」キーを禁止するにはどういった方法があるのか教えて ください。初歩的な質問ですみません・・・。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
ユーザーフォーム上のテキストボックスでのお話だ ということだと勝手に解釈して、回答します。 KeyDownで、KeyCodeに0を設定すると、キーの入力 を取り消すことができます。 Private Sub TextBox1_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer) If KeyCode = vbKeyEscape Then KeyCode = 0 End If End Sub こんな感じです。
その他の回答 (1)
こんなんじゃだめでしょうか? Private Sub Text1_KeyPress(KeyAscii As Integer) On Error Resume Next ''ESCを入力したら入力しないことにする If KeyAscii = 27 Then SendKeys "" End Sub それか後はKEYプレビューを無効にする。
お礼
おおぉっ・・・ありがとうございます! すばらしい最高です。大変参考になりました。 こんな初心者に回答頂き感謝しております。
補足
Formの「キー入力時」プロパティに記述してデパッグして見たのですが、 「ESC」キーを押した瞬間にデータが消えているみたいです。そのあとに ご教授頂いたプログラムが動き始めました。 Keyプレビューは「はい」にして「Fキー」を割り当てている為に無効に 出来ないのですが、私のやりかたが可笑しいのでしょうか?
お礼
お礼返信が遅れ申し訳ございません 私の説明不足で2回ものご教授申し訳ありませんでした。 おかげさまで何とかESCキーを禁止できました。 本当にありがとうございました。