2017-12-07 11 views
1

Microsoft Accessにインデックス付き=はい(重複なし)に設定されているフィールドを持つテーブルがあります。理由は、このフィールドに同じ番号が複数回入力されないようにするためです。私はこのテーブルのエントリーフォームを持っていますが、フラグは動作しますが、期待どおりには動作しません。ユーザーがフォームを閉じるかナビゲートするまで、ユーザーにフラグを立てません。無効な値を入力したフィールドを離れようとするとすぐにユーザーにエラーが表示されると、はるかに役立つと思います。これは可能ですか?私は、データの入力が終わってエラーがポップアップしてしまった場合には、ユーザーにとっては欲求不満であると思います。これを行うより良い方法があるかどうかはわかりません。Microsoft Access 2010の重複エラーが遅すぎる

答えて

0

あなたはにフィールドのフォーカス喪失時のイベントを使用することができます。

  1. いずれかの値がDlookup()を用いて、本にすでに存在するかどうかを確認しますか?
  2. OR if me.dirty then me.dirty = false

Eitherwayして変更をコミットしようとすると、これは設計上の問題です。あなたは、あなたのテーブル構造を見直すべきです。コードを提供すると、より良い回答を得ることができます。

+0

現在、コードは使用されていません。私は基本的なテーブルのセットアップを開始し、テーブルのデザインビューで "Indexed"プロパティを "Yes(No Duplicates)"に設定しました。この表から、非常に基本的な入力フォームがあります。私はこれが適切なアプローチであるかどうかはわかりませんでした。代わりにOnExitイベントを使用して試してみましょう – Kristen

+1

私はBeforeUpdateイベントとDlookup()を使用してエラーメッセージを生成しました。ありがとうございました。 – Kristen

関連する問題