2016-04-06 12 views
0

テーブルにレコードを入力するために使用されるフォーム内の2つのフィールドに「Is Not Null」という検証ルールがあります。私の書式では、ID、姓、姓、生年月日が尋ねられ、ルールは姓と名字フィールドに表示されます。フォームのデフォルト値で検証ルールが機能しない

何かが入力されて削除されても、ユーザーがこれらのフィールドのいずれかを空白にして、日付を入力してから「レコードを追加」をクリックすると、検証ルールはそのテーブルにレコードを追加できます検証ルールにもかかわらず、forenameフィールドとsurnameフィールドは空です。フィールドのデフォルト値を検証できない場合、 "Is Not Null"検証ルールは無意味に見えます。

答えて

2

フォームフィールド内の検証ルールは、このフィールドのデータがに変更された場合にのみ実行されます。。あなたのケースでは決して走りません。

データがAccessテーブルにある場合は、これらのフィールドのテーブルデザインにRequired = YesAllowZeroLength = Noを設定する必要があります。これにより、空のフィールドを持つレコードを保存できなくなります。

さらに複雑なチェックの場合は、Form.BeforeUpdateイベントを使用できます。

+0

フォームフィールドに存在チェックを表示する方法はありますか? – velociraptor

+0

VBAの場合のみ、 'Form.BeforeUpdate'イベントで' Cancel = True'を設定します。 – Andre

+0

それはMicrosoft Accessにあります – velociraptor

関連する問題