本文へスキップ

〒434-0038 浜松市浜北区貴布祢265-8 イトリエ1F

サブフォームの取り込み 〜 サンプルデータベースHEADLINE

メインとサブの関係

図1
「受注メインF」と「受注明細サブF」を別々に作成しましたので、今からメインフォーム内にサブフォームを取り込みます。

「受注メインF」は単票形式で作成しましたので、1件分のデータしか表示されません。
それに対して「受注明細サブF」は表形式で作成しました。従って複数のデータが表示されます。

メインフォームにサブフォームを取り込むと、メインフォームの共通フィールド(今回は受注コード)と同じ値のデータだけがサブフォームに表示されます(図1参照)。

メインとサブの共通フィールドのことをリンクフィールドと呼び、特にメイン側を「リンク親フィールド」、サブ側を「リンク子フィールド」と呼びます。

サブフォームの取り込み

図2
「受注メインF」をデザインビューで開きます。画面の左サイドで「受注メインF」をダブルクリックすると、フォームビューで開きますので、画面左下の 「デザインビュー」のボタンをクリックして切り替えてください(図2参照)。

続いて「デザイン」タブのコントロールの下向きの矢印をクリックして一覧表示にした後に、「サブフォーム/サブレポート」をクリックして選択します。
さらにサブフォームを追加したい位置でクリックします。今回は詳細セクションの、下部の空いているスペースの左寄りのほうでクリックします。

「サブフォームウィザード」が起動します(図3参照)。1枚目の画面ではどのフォームをサブフォームとして取り込みますかという意味です。「既存のフォームを使用する」を チェックし「受注明細サブF」を選択し「次へ」ボタンをクリックします。

図3
2枚目の画面は、リンクフィールドの指定です。「一覧から選択する」をチェックし、「受注コードでリンクし、受注Qの各レコードに対して・・・」を選択し 「次へ」をクリックします。

3枚目はコントロールの名前になります。メインから見た場合、サブフォームも一つのコントロールという位置づけになります(あまり気にしないでください)。 「受注明細」としておきましょう。そして「完了」をクリックします。

これでサブフォームが挿入されましたが、フォームビューに切り替えて見ていただくと、おそらくサブフォームのエリアが小さくて、データがすべては見えないと思います。
デザインビューに戻ってサブフォームのエリアを広げます。

図4
サブフォームのエリアを広げる場合は、サブフォームがオレンジの枠で囲われた状態でハンドルをドラッグします(図4参照)。
必要に応じて、フォームの幅、詳細セクションの高さも調整してください。