[Shift]+[Enter]で改行できるようにする

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

 

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です