メイン コンテンツへスキップ
サポート
Microsoft アカウントでサインイン
サインインまたはアカウントを作成してください。
こんにちは、
別のアカウントを選択してください。
複数のアカウントがあります
サインインに使用するアカウントを選択してください。

データシートは、行と列に配置されたデータの単純なビューです。 ナビゲーション ウィンドウでテーブルをダブルクリックすると、テーブル Access データシートとして表示されます。 データがコンパクトに表示されるため、データシートは、サブフォームとして使用して、 一対多リレーションシップの "多" 側のデータを表示する場合に適切に機能します。 この記事では、 Accessでフォームにデータシートを追加する方法について説明します。

目的に合ったトピックをクリックしてください

フォーム上のデータシートの例を表示する

製品カテゴリに関するデータと、それらのカテゴリ内のすべての製品を表示するフォームを作成するとします。 Categories テーブルのデータはリレーションシップの "1" 側を表し、Products テーブルのデータはリレーションシップの "多" 側を表します。 各カテゴリには、多数の製品を含めることができます。

サブフォーム付きのフォーム

1. メイン フォームには、リレーションシップの "一" 側のデータが表示されます。

2. データシートには、リレーションシップの "多" 側からのデータが表示されます。

データシートをフォームにドラッグ アンド ドロップする

既存のデータシートをフォームに追加する最も簡単な方法は、デザイン ビューでフォームを開き、ナビゲーション ウィンドウからフォームデザイン領域に既存のデータシート フォームをクリック、ホールド、ドラッグすることです。

この手順を開始する前にリレーションシップを正しく設定した場合、Access は自動的にリンク子フィールドリンク マスター フィールド プロパティを正しい値に設定し、メイン フォームをデータシートにリンクします。

[マイ リンク子フィールド] プロパティと [リンク マスター フィールド] プロパティが空白です

Access でサブフォーム コントロールを メイン フォームにリンクする方法を決定できない場合は、サブフォーム コントロールの [子フィールドのリンク] プロパティと [マスター フィールドのリンク] プロパティは空白のままにします。 これらのプロパティは手動で設定する必要があります。

レイアウト ビューを使用して既存のフォームにデータシートを挿入する

データベース内のテーブル間のリレーションシップを既に定義している場合は、レイアウト ビューを使用して、データシートを既存のフォームにすばやく追加できます。 リレーションシップの "多" 側のフィールドをリレーションシップの "一方" 側に基づくフォームに追加すると、関連レコードを表示するデータシートが自動的に作成されます。

  1. ナビゲーション ウィンドウで既存のフォームを右クリックし、ショートカット メニューの [レイアウト ビュー] をクリックして、 レイアウト ビュー で既存のフォームを開きます。

    [フィールド リスト] ウィンドウが表示されていない場合は、次の操作を行います。

    • Alt キーを押しながら F8 キーを押します。

      または

      [デザイン] タブの [ツール] グループで [既存のフィールドの追加] をクリックします。

      [フィールド 一覧] ウィンドウでは、テーブルがセクションに分割されていることに注意してください。このビューで使用できるフィールドと、その下にある関連テーブルで使用できるフィールド。 [フィールド一覧] ウィンドウの下部には、メイン テーブルに直接関連しないその他のテーブルが、[他のテーブルで使用できるフィールド] の下に表示されます。

  2. [ 関連テーブルで使用できるフィールド] セクションで 、データシートの最初のフィールドを含むテーブルを展開し、フィールドをフォームにドラッグします。 Access によってデータシートが作成され、フィールドが追加されます。

  3. 新しいデータシートにフィールドを追加するには、まずデータシートをクリックして選択する必要があります。 Access では、[ フィールド リスト ] ウィンドウが並べ替えられるので、データシートで使用できるフィールドが一番上に表示されます。 [ このビューで使用できるフィールド] セクションで、必要なその他のフィールドをデータシートにドラッグします。 各フィールドをデータシートにドラッグすると、カーソル バーが描画され、マウス ボタンを離したときにフィールドが挿入される場所が表示されます。

  4. メイン フォームまたはデータシートにフィールドを追加するには、最初にメイン フォームまたはデータシートをクリックして選択し、[フィールド リスト] ウィンドウからフィールドをドラッグします。

[フィールド一覧] ペインの [他のテーブルで使用できるフィールド] セクションには、選択したフォームの基になっているテーブルまたはクエリに直接関連しないテーブルが含まれています。 [リレーションシップ] ウィンドウで有効なすべてのテーブル リレーションシップを定義している場合、[ 他のテーブルで使用できるフィールド] セクションの フィールドは、作成するフォームの有効な選択とは考えられません。 このセクションからフォームにフィールドをドラッグすると、[ リレーションシップの指定 ] ダイアログ ボックスが表示されます。 続行する前に、2 つのテーブルを相互に関連付けるフィールドまたはフィールドを入力する必要があります。 これを行うと、定義済みのリレーションシップに従って [ フィールド一覧 ] ペインがセクションに並べ替えされなくなります。 このダイアログ ボックスで [ キャンセル ] をクリックし、代わりにテーブルリレーションシップを再検討することをお勧めします。 リレーションシップの詳細については、リレーションシップの 作成、編集、または削除に関する記事を参照してください。

ページの先頭へ

デザイン ビューを使用してデータシートを既存のフォームに挿入する

次の手順を使用して、テーブルまたはクエリに直接基づくデータシートをデザイン ビューの既存のフォームに追加します。

  1. ナビゲーション ウィンドウでフォームを右クリックし、[デザイン ビュー] をクリックして、 デザイン ビューでフォームを開きます。

  2. [ デザイン ] タブの [ コントロール ] グループで、[ コントロール ウィザードの使用 ] ツールが選択されている場合は、選択されないようにクリックします。

    ボタンの画像

    なぜでしょうか?

    サブフォーム コントロール ウィザードを使用すると、別のフォーム オブジェクトが作成され、そのフォーム オブジェクトにサブフォーム コントロールが基になります。 これに対し、このプロシージャはフォームではなくテーブルまたはクエリに直接基づくデータシートを作成します。

  3. [デザイン] タブの [コントロール] グループで [サブフォーム/サブレポート] ボタンをクリックします。

  4. フォーム デザイン グリッドで、データシートを挿入する場所をクリックします。

  5. コントロールの端と角のハンドルをドラッグして、サブフォーム コントロールの位置を変更し、サイズを変更します。

  6. サブフォーム コントロールの添付ラベルを編集するには、まずラベルをクリックし、ダブルクリックしてテキストを選択してから、新しいラベルを入力します。 ラベルを削除する場合は、ラベルを 1 回クリックし、DELETE キーを押します。

  7. プロパティ シートが表示されていない場合は、F4 キーを押して表示します。

  8. サブフォーム コントロールが現在選択されていない場合は、1 回クリックして選択します。

  9. プロパティ シートの [ データ ] タブで、[ ソース オブジェクト ] ドロップダウン リストをクリックし、データシートに表示するテーブルまたはクエリをクリックします。 たとえば、Orders テーブルのデータを表示する場合は、 Table.Orders をクリックします。

  10. この手順を開始する前にリレーションシップを正しく設定した場合、Access は自動的にリンク子フィールドリンク マスター フィールド プロパティを正しい値に設定し、メイン フォームをデータシートにリンクします。

    [マイ リンク子フィールド] プロパティと [リンク マスター フィールド] プロパティが空白です

    Access でサブフォーム コントロールを メイン フォームにリンクする方法を決定できない場合は、サブフォーム コントロールの [子フィールドのリンク] プロパティと [マスター フィールドのリンク] プロパティは空白のままにします。 これらのプロパティは、次の手順を使用して手動で設定する必要があります。

    1. デザイン ビューでメイン フォームを開きます。

    2. サブフォーム コントロールを 1 回クリックして選択します。

    3. プロパティ シートが現在表示されていない場合は、F4 キーを押します。

    4. プロパティ シートの [データ] タブで、[子フィールドのリンク] プロパティ ボックスの横にある [(...)] をクリックします。

      [サブフォーム フィールド リンク ビルダー] ダイアログ ボックスが表示されます。

    5. [ マスター フィールド] と [ 子フィールド] ドロップダウン リストで、フォームをリンクするフィールドを選択します。 使用するフィールドがわからない場合は、[ 提案 ] をクリックして、リンクフィールドを決定するアクセス権を付与します。 作業が終了したら、[OK] をクリックします。

      フォームのリンクに使用するフィールドが表示されない場合は、マスター フォームまたは子フォームのレコード ソースを編集して、フィールドが含まれていることを確認する必要がある場合があります。 たとえば、フォームがクエリに基づいている場合は、クエリ結果にリンク フィールドが存在することを確認します。

    6. メイン フォームを保存し、フォーム ビューに切り替えて、フォームが期待どおりに動作することを確認します。

  11. フォームを保存するには、クイック アクセス ツール バー[保存] をクリックするか、Ctrl + S キーを押します。

  12. フォーム ビュー に切り替え、データシートが期待どおりに動作することを確認します。

ページの先頭へ

分割フォームとデータシートを含むフォームの違いを理解する

データシートを含むフォームには、異なる (通常は関連する) データ ソースのデータが表示されます。 たとえば、フォームには従業員が表示され、各従業員に割り当てられているすべてのタスクを示すデータシートが含まれている場合があります。 データシートには、それを含むフォームとは異なるデータ ソースがあります。 一方、分割フォームには 2 つのセクション (フォームとデータシート) がありますが、両方のセクションに同じデータが表示されます。 2 つのセクションは互いに追跡され、データの 2 つの異なるビューが一度に表示されます。

分割フォームの作成方法と使用方法の詳細については、「分割フォームを作成する」を参照してください。

ページの先頭へ

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。

この情報は役に立ちましたか?

言語の品質にどの程度満足していますか?
どのような要因がお客様の操作性に影響しましたか?
[送信] を押すと、Microsoft の製品とサービスの改善にフィードバックが使用されます。 IT 管理者はこのデータを収集できます。 プライバシーに関する声明。

フィードバックをいただき、ありがとうございます。

×