• 締切済み

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日

みんなの回答

回答No.2

リレーションシップの変更前に作成されたフォームのレコードソースは、リレーションシップの変更が自動で反映されませんので、フォームのレコードソースを設定し直すか、フォームを作り直してみて下さい。

noname#220943
質問者

お礼

試行錯誤して、結局フォームを作り直したら解決しました。 解明はできませんでしたが、yasuyasu77さんの回答がヒントになりました。 ありがとうございました。

回答No.1

リレーションシップ設定時のT_名簿とT_免許の「結合の種類」が原因でしょう。 Access2007を使っていないので、設定方法が同じかどうか分かりませんが、Access2003では、「結合の種類」を「'T_名簿'の全レコードと"T_免許"の同じ結合フィールドのレコードだけを含める。」に変えればよいかと思います。 頑張ってください。

noname#220943
質問者

お礼

回答ありがとうございます。 結合の種類を変更してみましたが、現象に変化はありませんでした。

関連するQ&A

専門家に質問してみよう