サブフォームをアクティブ化するときに、検証ルールが誤ってトリガーされるのに苦労しています。
MS Accessには、患者に関するデータを含むフォームがあります。このフォームには、この患者に属する医療機器の1つのレコードを含むサブフォームが含まれています。患者テーブルには[ID]フィールドがあり、医療機器テーブルには[PatientID]フィールドがあります。医療機器テーブルは、患者テーブルと1対多の関係にあります(1人の患者が多くの医療機器を持つことができます)。
サブフォームを含むフォームを開くと、サブフォームのForm_Load()
メソッドが現在の日付などの特定のフィールドに入力します。
問題は次のとおりです。サブフォームの制御が(タブまたはクリックによって)アクティブ化されるとすぐに、医療機器テーブルの検証ルールがトリガーされます(1回だけ)。検証エラーメッセージを閉じた後、親フォームとサブフォームのコントロールを問題なく切り替えることができます。
メソッドからコードを削除すると、Form_Load()
検証をトリガーせずにサブフォームのコントロールをアクティブ化できます。
親フォームとサブフォームの両方が、クエリではなくテーブルにリンクされています。
検証をトリガーせずにVBAを使用してサブフォームにデータを入力するにはどうすればよいですか?