しかし数千件になると、いちいち調べてから設定するのは大変です。印刷したいページが並んでいるとは限りません。
そんな場合はレコードを絞り込んでからレポートを表示できたほうが便利です。
Access では既存のレポートやクエリをコピーして、ちょっと修正するだけで、簡単にいろいろな表現ができます。ゼロから作る必要はありません。実際にやってみましょう。
【1】Accessのファイル「SampleDB020.mdb」を起動します。
【2】まずテーブル T07Slip を開いて、 SLIP_CD にある番号を、1つか2つメモしておいてください。後で動作確認する時に使います。
【3】レポートで R02Slip をコピーして「R04SlipParam」を作成します。
【4】コピーした R04SlipParam を印刷プレビューで開きます。
この段階では R02Slip とまったく同じです。コピーしただけなので当然ですね。レポートのタイトル(標題)も R02Slip のままになっています。
【5】クエリで Q08Slip をコピーして「Q10SlipParam」を作成します。
【6】「Q10SlipParam」を選択して、「デザイン」をクリックします。
【7】SLIP_CD の抽出条件に、以下のように入力してください。
[SLIP_CDを入力してください。]
[ ]カッコで囲んだ文字列が、ダイアログボックスに表示されます。
【8】このクエリをデータシートビューで開きます。
【9】パラメータの入力ダイアログボックスが表示されたら、「3」と入力し、「OK」をクリックします。
*テーブル T07Slip の SLIP_CD に存在する番号なら何番でもかまいません。
【10】SLIP_CD が「3」のレコードが表示されました。
*SLIP_CD は主キーなので重複したレコードは無いため、常に1件だけになります。
ちなみにテーブル T07Slip に存在しない SLIP_CD を入力すると以下のようになり、レコードが表示できません。
【11】クエリの変更点を「保存」して、クエリを閉じます。
クエリが完成したら、あとはレポートのレコードソースを変更するだけです。既存のレポートのレコードソースを変更する手順は以下のようにします。
【12】「R04SlipParam」を選択して、「デザイン」をクリックします。
【13】レポートのデザインビューで、左上(四角)をマウスで右クリックし、コンテキストメニューから「プロパティ」を選択します。
*これはレポート全体のプロパティです。
【14】レコードソースは「Q10SlipParam」を選択し、標題は「R04SlipParam」に変更します。
*レコードソースとは、レポートの基になるクエリやテーブルのことです。
【15】変更したらプロパティを閉じてください。
【16】レポートの変更点を「上書き保存」します。
【17】レポートを印刷プレビューで開きます。
【18】レコードソースのクエリが変わったので、パラメータの入力ダイアログボックスが表示されます。「3」と入力し、「OK」をクリックします。
【19】SLIP_CD で抽出された1件だけが表示されている点に注目してください。
今回は主キーである SLIP_CD で抽出したので、必ず1件になりますが、他のフィールドを抽出条件に使うと、複数ページ表示することも可能です。
存在しない SLIP_CD を入力した時は、空のレポートになります。
既存のクエリやレポートをコピーして活用する感覚が掴めたのではないでしょうか。Accessでは一つのテーブルを基に、クエリを経由することで様々な形で活用することができます。
【ワンポイント】
同じ要領で、クエリを変えるだけで様々な抽出レポートが作れます。
例
・SLIP_DATE で抽出すると、販売年月日で絞り込めます。
・CST_CD で抽出すると、顧客ごとの伝票が絞り込めます。
SLIP_DATE や CST_CD を抽出条件にした場合は、レポートは複数ページになります。もちろん組み合わせて抽出することもできます。
Accessの基本を短期間で学べるように工夫しています。リレーショナルデータベースの考え方が理解できます。
