Accessの既定の設定では、テキストボックスでEnterキーを押すと、次のフィールドに移動するようになっています。
[Enterキー入力時動作]プロパティーを「フィールドに行を追加」に設定すると、Enterキーを押すと改行するようになります。
こうすることで、Tabキーでフィールドの移動、Enterキーで改行と使い分けることが出来ます。
では、[Shift]+[Enter]で改行できるようにするにはどうしたらいいでしょうか?
これは、プロパティーの設定だけでは実現できませんので、テキストボックスの「キークリック時」イベントを記述する必要があります。
例として、テキストボックス「txt_備考」のキークリックイベントを記載します。
Private Sub txt_備考_KeyDown(KeyCode As Integer, Shift As Integer) Dim s As Long Dim ctrl As TextBox '「Shift+Enter」の同時押し時 If KeyCode = vbKeyReturn And Shift = acShiftMask Then '入力したキーを無効化 KeyCode = 0 ctrl = Me.txt_備考 s = ctrl.SelStart ctrl.Value = Left(ctrl.Text, s) & vbCrLf & Mid(ctrl.Text, s + 1) ctrl.SelStart = s + 2 End If End Sub
コメント