hatena
hatena
2025/11/12 (水) 13:52:55
もし、テキストボックスにフォーカスある状態で未入力の場合はほかのコントロールにフォーカス移動を禁止したいという仕様がご希望なら、一般的には下記のような設計にします。
テキストボックスのフォーカス移動時のイベントプロシージャに下記のコードを設定します。
テキストボックス名が「参加カテゴリ」として、
Private Sub 参加カテゴリ_Exit(Cancel As Integer)
If Nz(Me.参加カテゴリ.Value) = "" Then
Cancel = True 'フォーカス移動をキャンセル
MsgBox "参加種目が選択されていません", vbOKOnly
End If
End Sub
これで未入力状態では他コントロールへ移動できません。
ただし、このフィールドを入力必須にしたいということなら、これでは不十分です。
このテキストボックスをとばして、他のテキストボックスへ移動したりして、レコード保存操作をすれば未入力のまま保存されます。
この場合は、テーブルデザインで入力必須の設定をするのが確実です。
通報 ...