• 締切済み

アクセスのフォームの必須項目入力確認方法について

アクセスのフォームの必須項目を入力していないと「閉じる」ボタンを押下したとき、「○○入力項目に入力がない」というエラーメツセージが出るようにし、入力完了後、「閉じる」ボタンを押下すると閉じるようにしたいのですが・・・

みんなの回答

回答No.3

自分も同じような経験があるので作成したVBAがあります。 フォームの編集画面でボタンウィザードでボタンを作成します。 ボタンの機能はフォーム→フォームを閉じるを選択します。 コードを表示するとDoCmd.closeがあるので ここから~ここまでの部分をコピーしてください。 [入力項目]の部分をあなたの必要項目のフィールド名に 書き換えます。VBAの編集経験があれば簡単だと思います。 Private Sub コマンド5_Click() On Error GoTo Err_コマンド5_Click Dim txtdata As Variant 'ここから↓ Dim flg As Integer flg = 0 txtdata = [入力項目].Value If IsNull(txtdata) = True Then flg = 1 End If If flg = 1 Then a = MsgBox("必須項目に入力もれがあります。", vbOKOnly, "入力項目の確認") Else DoCmd.Close End If 'ここまで↑ Exit_コマンド5_Click: Exit Sub Err_コマンド5_Click: MsgBox Err.Description Resume Exit_コマンド5_Click End Sub

2713654
質問者

お礼

ありがとうございました。 完璧です。 助かりました。

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.2

>何も入力していないと閉じられてしまうのですが テーブルには何も追加されていないのでは。 >1度入力した後、削除した場合エラーメツセージがでます)??? 何か作業をした後なので、空白を追加した場合、エラーが出ると思います。 作業を破棄してデータを追加しないか、続けて作業をやり直すかを聞いてきていると思います。 つまり、これで良いのでは?

2713654
質問者

お礼

ありがとうございました。 原因がわかりました。 フォームの「閉じる」ボタンのプロパティクリック時のところにマクロで作った「フォームを閉じる」のマクロを割り当てると、エラーメッセージが表示され。「閉じる」ボタンをコマンドウィザードの「フォームの操作」で「フォームを閉じる」によりボタン作成した場合なにも表示されず閉じて、データも格納出来ませんでした。

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答No.1

作成したテーブルのそれぞれのフィールドに 値要求 というプロパティがありますので 必須項目にしたいフィールドの場合は、 値要求を はい を選択しておけば、フォームでも登録の際にエラーメッセージが表示されますが。

2713654
質問者

補足

ありがとうございました。 しかし、値要求を「はい」にしても、何も入力していないと閉じられてしまうのですが(1度入力した後、削除した場合エラーメツセージがでます)???

関連するQ&A