• ベストアンサー

Access2000VBAでEscキーを禁止!

Access2000VBAでEscキーを2回押すと入力していた内容が消えたんです。 なぜ?どうして?教えてください!ぜひお願いします。 出来れば「Esc」キーを禁止するにはどういった方法があるのか教えて ください。初歩的な質問ですみません・・・。

質問者が選んだベストアンサー

  • ベストアンサー
  • arata
  • ベストアンサー率49% (139/279)
回答No.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 こんな感じです。

pooh_200x
質問者

お礼

お礼返信が遅れ申し訳ございません 私の説明不足で2回ものご教授申し訳ありませんでした。 おかげさまで何とかESCキーを禁止できました。 本当にありがとうございました。

その他の回答 (1)

noname#2503
noname#2503
回答No.1

こんなんじゃだめでしょうか? Private Sub Text1_KeyPress(KeyAscii As Integer) On Error Resume Next ''ESCを入力したら入力しないことにする If KeyAscii = 27 Then SendKeys "" End Sub それか後はKEYプレビューを無効にする。

pooh_200x
質問者

お礼

おおぉっ・・・ありがとうございます! すばらしい最高です。大変参考になりました。 こんな初心者に回答頂き感謝しております。

pooh_200x
質問者

補足

Formの「キー入力時」プロパティに記述してデパッグして見たのですが、 「ESC」キーを押した瞬間にデータが消えているみたいです。そのあとに ご教授頂いたプログラムが動き始めました。 Keyプレビューは「はい」にして「Fキー」を割り当てている為に無効に 出来ないのですが、私のやりかたが可笑しいのでしょうか?

関連するQ&A