- 締切済み
ACCESS フォームの不具合 (初心者)
ACCESS初挑戦で名簿を作成しています。大まかには以下の構造です。 T_名簿 ID(主キー)<※1> 氏名 住所 ...以下略 T_免許 ID(主キー)<※1> 免許証番号(主キー)<※2> 取得年月日 ...以下略 T_許可 免許証番号(主キー)<※2> 許可番号(主キー) 許可年月日 ...以下略 F_入力 単票形式。タブで1ページ目にはT_名簿の内容。 2ページ目にはT_免許の内容と、その下にサブデータシートとして F_許可(表形式)を埋め込み。リンク親子フィールドは設定済み。 T_名簿に入力された人のうち、免許を持っているのは一部の人なので T_名簿とT_免許を1対1のリレーションシップでつないでみました。<※1> 1つの免許につき、個別に許可を複数受けることがあるので、 T_許可を1対多のリレーションシップでつないでいます。<※2> 【エラー内容】 F_入力で、タブ2ページ目(T_免許の内容)が入力されていないレコードに移動できません。 ページが飛ばされるか、移動できないと出ます。T_許可の内容は未入力でも大丈夫なようです。 [免許証番号]を主キーから外してみたりしたのですが、どうもうまくいきません。 何が原因でこうなってしまうのでしょうか。 WinsowsXP/Access2007(ファイルは2002-2003形式)/Access使用歴 5日
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- yasuyasu77
- ベストアンサー率50% (2/4)
リレーションシップの変更前に作成されたフォームのレコードソースは、リレーションシップの変更が自動で反映されませんので、フォームのレコードソースを設定し直すか、フォームを作り直してみて下さい。
- yasuyasu77
- ベストアンサー率50% (2/4)
リレーションシップ設定時のT_名簿とT_免許の「結合の種類」が原因でしょう。 Access2007を使っていないので、設定方法が同じかどうか分かりませんが、Access2003では、「結合の種類」を「'T_名簿'の全レコードと"T_免許"の同じ結合フィールドのレコードだけを含める。」に変えればよいかと思います。 頑張ってください。
お礼
回答ありがとうございます。 結合の種類を変更してみましたが、現象に変化はありませんでした。
お礼
試行錯誤して、結局フォームを作り直したら解決しました。 解明はできませんでしたが、yasuyasu77さんの回答がヒントになりました。 ありがとうございました。