レポートのデータ ソースを選択するには、レイアウト ビューでレポートを開き、Alt キーを押しながら Enter キーを押してプロパティ シートを開きます。 レポート オブジェクト タブのすぐ下にある四角をクリックしてレポート全体を選択し、プロパティ シートの [データ] タブで、[レコードソース] をクリックしてプロパティを選択します。 そうすると、リストからアイテムを選択するか、[ビルド] ボタン をクリックし、他のクエリと同様にレコード ソースを作成できるクエリ デザイン ビューを開き、レコード ソースを設定できます。
レポートのレコード ソースによって、レポートに表示できるデータベースのフィールドが決定されます。 リレーショナル データベースでは、通常、関連データが複数のテーブルに格納されます。 たとえば、顧客に関する情報は 1 つのテーブルに格納され、注文に関する情報は別のテーブルに格納されます。 レポートを使用すると、柔軟にデータを「再収集」して思いどおりにそのデータを表示したり、印刷用に最適化したりできます。 レポートのレコードソースの詳細については、この記事の残りの部分を参照してください。 レポートの概要については、「Access におけるレポートの概要」を参照してください。
注: この記事は Access Web アプリ (Access で設計してオンラインで公開するデータベースの一種) には適用されません。 詳細については、「Access アプリを作成する」を参照してください。
この記事の内容
さまざまな種類のレコード ソース
表
必要なすべてのフィールドが 1 つのテーブルにある場合は、そのテーブルをレポートのレコード ソースとして使用することができます。 必要なフィールドが 2 つ以上のテーブルに含まれている場合は、一般的な種類の値で論理的にテーブルを結合することを確認してから、名前付きクエリまたは埋め込みクエリを作成してレコード ソースとして使用する必要があります。
名前付きクエリ
名前付きクエリ (通常はクエリと呼ばれます) は、データベース オブジェクトとして保存されたクエリです。 名前付きクエリは、複数のフォームまたはレポートのレコード ソースとして使用できます。 ただし、クエリデザインの変更は、レコード ソースとして使用するすべてのフォームとレポートに影響します。 さらに、名前付きクエリは比較的簡単に削除できます。これにより、使用するフォームやレポートが破損します。
埋め込みクエリ
埋め込みクエリとは、別のオブジェクトの "RecordSource/レコード ソース" プロパティに保存されるクエリです。 埋め込みクエリは個別オブジェクトではないため、クエリを誤って削除または変更してレポートを解除する可能性が低くなります。 埋め込みクエリをレポート専用にする場合 (つまり、埋め込みクエリを他のオブジェクトと共有しない)、埋め込みクエリを作成することをお勧めします。
既定では、次のセクションで説明するように、レポート デザイン、空白のレポート、ラベルのツールを使用すると、埋め込みクエリが作成されます。 レポート用に複数のテーブルからデータを選択する場合は、レポート ウィザードでも埋め込みクエリが作成されます。 1 つのテーブルからデータを選択するだけの場合は、レポート ウィザードによってレポートがそのテーブルに直接連結されます。
SQL ビューで開いている名前付きクエリから SQL ステートメントをコピーしてそれをレポートの "RecordSource/レコード ソース" プロパティに貼り付けて、埋め込みクエリを作成することもできます。 SQL ビューで名前付きクエリを開くには
-
ナビゲーション ウィンドウでクエリを右クリックし、[デザイン ビュー] をクリックします。
-
[デザイン] タブの [結果] グループで [表示] をクリックし、[SQL ビュー] をクリックします。
レポート ツールでレコード ソースを作成する方法
Access でレポートを作成するには、[作成] タブの [レポート] グループでツールのいずれかをクリックします。 ツールの使用方法に応じて、前のセクションで説明した 3 種類のレコード ソースのいずれかが作成されます。
次の表では、各レポート ツールの操作内容と、既定で作成されるレコード ソースの種類について説明します。
ツール |
説明 |
既定のレコード ソースの種類 |
---|---|---|
レポート |
データ ソースのすべてのフィールドを含む、簡単な表形式レポートを作成します。 |
テーブルまたは名前付きクエリ。これは、ツールをクリックする前にナビゲーション ウィンドウで選択する必要があります。 |
レポート デザイン |
必要なフィールドやコントロールだけを追加する、空白のレポートをデザイン ビューで開きます。 |
埋め込みクエリ (フィールドを [フィールドリスト] 作業ウィンドウからレポートにドラッグした場合)。 プロパティ シートで [レコード ソース] ドロップダウン リストからテーブルまたは名前付きクエリを選択することもできます。 |
空白のレポート |
レイアウト ビューで空白のフォームを開き、[フィールド リスト] ウィンドウを表示します。 フィールドを [フィールド リスト] からレポートにドラッグすると、埋め込みクエリが作成され、レポートの "RecordSource/レコード ソース" プロパティに保存されます。 |
埋め込みクエリ (フィールドを [フィールドリスト] 作業ウィンドウからレポートにドラッグした場合)。 プロパティ シートで [レコード ソース] ドロップダウン リストからテーブルまたは名前付きクエリを選択することもできます。 |
レポート ウィザード |
フィールド、グループ化/や並べ替えのレベル、およびレイアウト オプションを指定できる複数ステップ ウィザードを表示します。 ウィザードでの選択内容を基にしたレポートが作成されます。 |
埋め込みクエリ (複数のテーブルからフィールドを選択した場合)。 1 つのテーブルからフィールドを選択した場合は、そのテーブルがレコード ソースとして使用されます。 |
ラベル |
標準またはユーザー設定のラベル サイズ、表示するフィールド、およびフィールドの並べ替え方法を選択できるウィザードを表示します。 ウィザードでの選択内容を基にしたラベル レポートが作成されます。 |
テーブルまたは名前付きクエリ。これは、ツールをクリックする前に選択する必要があります。 |
注: レポート デザイン、レポート ウィザード、およびラベルのツールは、「クライアント」レポートを作成しますが、Web データベースと互換性がありません。 Web データベースの詳細については、「SharePoint で Web データベース サイトを編集または発行する」を参照してください。
レコード ソースを操作する
レコード ソースを埋め込みクエリに変換する
テーブルまたは名前付きクエリに連結されているレポートは、埋め込みクエリに連結されるように変更を加えることができます。 前に説明したように、これにより、レポートがより自己完結型になり、他のオブジェクトへの依存が少なくなり、データベースの保守が簡単になります。 現在のレコード ソースの種類に応じて、次のいずれかの方法を使用してレコード ソースを埋め込みクエリに変換します。
方法 1: [ビルド] ボタンをクリックする
"RecordSource/ レコード ソース" プロパティがテーブル名である場合は、"RecordSource/レコード ソース" プロパティ ボックスの [ビルド] ボタンをクリックして埋め込みクエリをすばやく作成できます。
-
ナビゲーション ウィンドウで、変更するレポートを右クリックし、[レイアウト ビュー] をクリックします。
-
レポート上の任意の場所を右クリックし、[レポートのプロパティ] をクリックします。
-
[ すべて ] タブの [ レコード ソース ] プロパティ ボックスをクリックし、[ビルド] ボタンをクリック 。
-
テーブルに基づいてクエリを作成するかどうかを確認するメッセージが表示されます。 [はい] をクリックして続行します。
Access によってクエリ ビルダーが開き、元のテーブルが [コントロール ソース] プロパティに追加されます。 -
レポートに表示する各フィールド名をダブルクリックして、クエリ グリッドにフィールドを追加します。 レポートに表示するすべてのフィールドに対してこの操作を行う必要があります。
-
リレーション テーブルまたはクエリからフィールドを追加するには
-
[ デザイン ] タブの [ クエリ設定 ] グループで、[ テーブルの追加 ] (Access でテーブルを表示 ) をクリックします。
-
追加するテーブルまたはクエリを選択します。
-
追加するテーブルとクエリが論理的な方法で結合されていることを確認してください。 たとえば、"得意先" テーブルの ID フィールドには、"受注" テーブルの顧客 ID フィールドに結び付ける結合線がある可能性があります。 フィールド名を 1 つのテーブルまたはクエリから別のテーブルまたはクエリのフィールド名をドラッグして、結合線を作成することができます。する記事を参照してください。
クエリの作成の詳細については、クエリの概要に関 -
レポートに表示する各フィールド名をダブルクリックして、クエリ グリッドにフィールドを追加します。 レポートに表示するすべてのフィールドに対してこの操作を行う必要があります。
-
-
クエリをテストするには
-
[デザイン] タブの [結果] グループで [表示] をクリックし、[データシート ビュー] をクリックします。
-
デザイン ビューに戻り、[ デザイン] タブの [結果] グループで [表示] をクリックし、[デザイン ビュー] をクリックします。
-
-
クエリによって返されたデータがレポートに表示するデータであることを確認したら、[デザイン] タブの [閉じる] グループで [閉じる] をクリックします。
-
[はい] をクリックし、SQL ステートメントに加えた変更を保存してプロパティを更新します。
注: 新しいクエリに、レポートで使用されていた一部のフィールドが含まれていない場合は、存在しないフィールドごとにパラメーター値の入力を要求されます。 レポートのフィールドへの参照を削除したり、「埋め込みクエリを編集する」の手順を実行してクエリに存在しないフィールドを追加したりすることができます。
方法 2: フィールド リストを使用して、リレーション テーブルからフィールドを追加する
-
ナビゲーション ウィンドウで、変更するレポートを右クリックし、[レイアウト ビュー] をクリックします。
-
[フィールド リスト] 作業ウィンドウが表示されていない場合は、[デザイン] タブの [ツール] グループで [既存フィールドの追加] をクリックします。
-
[すべてのテーブルを表示する] がフィールド リストの一番上に表示される場合は、それをクリックしてリレーション テーブルと他のテーブルのフィールドを表示します。
-
[リレーション テーブルで利用可能なフィールド] で、テーブルを展開します。埋め込みクエリを編集する」の手順を実行して埋め込みクエリを編集したりすることができます。
Access を使用すると、レコード ソースが、追加したフィールドを含む埋め込みクエリに変更されます。 このようにしてフィールドの追加を続けたり、「
方法 3: 名前付きクエリの SQL をコピーして貼り付ける
-
ナビゲーション ウィンドウで、コピーする SQL ステートメントが含まれているクエリを右クリックし、[デザイン ビュー] をクリックします。
-
[ホーム] タブの [表示] グループで [表示] をクリックし、[SQL ビュー] をクリックします。
-
SQL ペイン内のテキストをコピーし、保存せずにクエリを閉じます。
-
ナビゲーション ウィンドウで、埋め込みクエリを追加するレポートを右クリックし、[レイアウト ビュー] をクリックします。
-
プロパティ シートがまだ表示されていない場合は、F4 キーを押して表示します。
-
[すべて] タブの "RecordSource/レコード ソース" プロパティにあるテキストを選択し、Ctrl キーを押しながら P キーを押して SQL をそのプロパティ ボックスに貼り付けます。
注: 新しいクエリに、レポートで使用されていた一部のフィールドが含まれていない場合は、存在しないフィールドごとにパラメーター値の入力を要求されます。 レポートのフィールドへの参照を削除したり、「埋め込みクエリを編集する」の手順を実行してクエリに存在しないフィールドを追加したりすることができます。
方法 4: 別のフォームまたはレポートの SQL をコピーして貼り付ける
1 つのオブジェクトの "RecordSource/レコード ソース" プロパティから埋め込みクエリを直接コピーして、別のオブジェクトに貼り付けることができます。 この方法により、必要なデータを返す埋め込みクエリが別のフォームまたはレポートに含まれている場合に、作業中のレポートでの埋め込みクエリの再利用が簡単になります。
-
ナビゲーション ウィンドウで、コピーする埋め込み SQL ステートメントが含まれているフォームまたはレポートを右クリックし、[レイアウト ビュー] をクリックします。
-
フォームまたはレポート上の任意の場所を右クリックし、[フォームのプロパティ] または [レポートのプロパティ] をクリックします。
-
[すべて] タブの "RecordSource/レコード ソース" プロパティ ボックスで SQL ステートメントのテキスト全体を選択し、Ctrl キーを押しながら C キーを押してコピーします。
-
フォームまたはレポートを保存せずに閉じます。
-
ナビゲーション ウィンドウで、埋め込みクエリを追加するレポートを右クリックし、[レイアウト ビュー] をクリックします。
-
レポート上の任意の場所を右クリックし、[レポートのプロパティ] をクリックします。
-
[すべて] タブの "RecordSource/レコード ソース" プロパティにあるテキストを選択し、Ctrl キーを押しながら P キーを押して SQL をプロパティに貼り付けます。
注: 新しいクエリに、レポートで使用されていた一部のフィールドが含まれていない場合は、存在しないフィールドごとにパラメーター値の入力を要求されます。 レポートのフィールドへの参照を削除したり、次の手順 (「埋め込みクエリを編集する」) を実行してクエリに存在しないフィールドを追加したりすることができます。
埋め込みクエリを編集する
データベースが大きくなるにつれて、多くのフィールドをレポートに追加するなどのためにレポートのレコード ソースを変更する必要がある場合があります。 クエリ ビルダーでレコード ソースを開くには、次の手順に従います。
-
ナビゲーション ウィンドウで、編集する埋め込みクエリが含まれているレポートを右クリックし、[レイアウト ビュー] をクリックします。
-
レポート上の任意の場所を右クリックし、[レポートのプロパティ] をクリックします。
-
[ すべて ] タブの [ レコード ソース ] プロパティ ボックスをクリックし、[ ビルド ] ボタンをクリック 。
Access を使用すると、クエリ ビルダーでクエリが開きます。 -
必要に応じてクエリを編集し、[デザイン] タブの [閉じる] グループで [閉じる] をクリックします。
-
[はい] をクリックし、変更を保存してプロパティを更新します。
Access はクエリ ビルダーを閉じます。 クエリ ビルダーに加えたすべての変更が "RecordSource/レコード ソース" プロパティの SQL ステートメントに反映されます。
クエリの作成方法の詳細については、「クエリの概要」の記事を参照してください。
名前付きクエリとして埋め込みクエリを保存する
レポートのレコード ソースとして機能する埋め込みクエリが他の目的に役立つように決定することができます。 その場合、埋め込みクエリを、他のオブジェクトで使用できる名前付きクエリとして保存することができます。
-
ナビゲーション ウィンドウで、埋め込みクエリが含まれているレポートを右クリックし、[レイアウト ビュー] をクリックします。
-
レポート上の任意の場所を右クリックし、[レポートのプロパティ] をクリックします。
-
[ すべて ] タブの [ レコード ソース ] プロパティ ボックスをクリックし、[ ビルド ] ボタンをクリック 。
Access を使用すると、クエリ ビルダーでクエリが開きます。 -
[デザイン] タブの [閉じる] グループで [名前を付けて保存] をクリックします。
-
[名前を付けて保存] ダイアログ ボックスの一番上のボックスにクエリ名を入力し、[OK] を入力します。
Access は、ナビゲーション ウィンドウに名前付きクエリとしてクエリを保存します。
-
[デザイン] タブの [閉じる] グループで [閉じる] をクリックします。
埋め込みクエリに加えられた変更を保存するかどうかを確認するメッセージが表示されます(変更を加えていなくても)。 ほとんどの場合、[いいえ] をクリックしてクエリ ビルダーを閉じるだけです。 ただし、レポートの埋め込みクエリに反映させる変更がある場合は、[はい] をクリックします。