プロが教えるわが家の防犯対策術!

アクセス2010のレポートで、例えば、以下の様な帳票が出力可能かどうか教えてください。


商品A 1月の売上げ 2月の売上げ・・・・12月の売上げ
商品B 1月の売上げ 2月の売上げ・・・・12月の売上げ
  ・
  ・
  ・

このようなレポートを出力する場合、どのようなレポートを作成すればよいのでしょうか?
ちなみに、1~12月になっていますが、今月から過去12ヶ月分を表示するような感じで、テーブルにはその情報は入っているものとします。

A 回答 (3件)

テーブルの説明がないので、勝手に想像して・・


日付/時刻型フィールドがあれば、
直近の12ヶ月は、Dateadd関数や DateSerial関数などで、Where 条件に指定。
クエリはクロス集計クエリを使います。
ただ、単純にクロス集計クエリを作っても
月が変わるとフィールド名も変わってしまうのでレポートではそのままでは使えません。

なので・・
説明が長くなってしまいますので、hatena さんの方法をじっくりと読んでみてください。
クロス集計クエリの列名を固定する方法
http://hatenachips.blog34.fc2.com/blog-entry-117 …

この回答への補足

回答有り難うございます。

一度じっくり読んでみます。
その後、改めてお礼させて頂きます。

No.1さんにも書きましたが、実現可能なテーブル、コード、レポートを、お時間があればよろしくお願いします。

補足日時:2012/06/01 10:34
    • good
    • 0

> 説明が不足していましたが、どのようなテーブルであれば、実現が可能なのか。


> こんなテーブル形式で、こんなコードで、こんなレポートを作れば可能ですよ
> というような具体的なイメージがあればと思いました。
>
> もし、お時間があれば、具体的な回答もお願いします。

えっ。
データベース設計までですか。
うーん、それはもう、プロのシステム屋さんに有料で頼むレベルです。
無料で答えを出して下さる優しい方が現れるといいですね☆


真面目な話、必要な情報が入っているテーブルなら、なんでもいいわけですよ。
極端に言えば、レポートに出したいフィールド("商品名"、"1月の売上"、…、"12月の売上")を
持ってるテーブルであれば、それをそのままレポート出力すればいいだけの話です。
それならExcelでもできます。

でも、それじゃ困るんですよね?


・元データがどんな情報を持っているか
・データベースでどんな情報を保存しておきたいか
また、細かい話として、例えば、
・データベースには商品ごとの日付と売上が入っているから
 1月の売上なら、1/1~1/31の売上を集計したいとか
・1月の売上には商品Aがあるけど2月の売上には商品Aは無いとか
こういった、データベース作成の背景が分かっていないと、
適当なテーブル設計はできても、適切なテーブル設計はできません。

まず、質問者さまがテーブルを設計されて、#2さんが提示された
URLをよく読んで勉強して、それで分からないことがあれば
またご質問ください。
    • good
    • 0
この回答へのお礼

> えっ。
> データベース設計までですか。
> うーん、それはもう、プロのシステム屋さんに有料で頼むレベルです。

ですよねw
図々しくも聞いてみました。


> 極端に言えば、レポートに出したいフィールド("商品名"、"1月の売上"、…、"12月の売上")を
> 持ってるテーブルであれば、それをそのままレポート出力すればいいだけの> 話です。

そうですね。その形式であれば出力できるのはわかります。
そのように作ってしまえばいいんですが、普通ならどんな風につくるのかなと思った次第で。独学でやっているので、常套手段というのを知らないもので。

> まず、質問者さまがテーブルを設計されて、#2さんが提示された
> URLをよく読んで勉強して、それで分からないことがあれば
> またご質問ください。

ありがとうございます。まずは勉強してみます。
それから、必要であれば、また新たに質問させて頂きます。

ご回答ありがとうございます。

お礼日時:2012/06/04 11:53

そのものズバリの答えではないんですが。



出力可能かどうかは、元テーブル次第だと思います。


例えば、元テーブルは
テーブル[2012年1月]
 商品名フィールド、1月の売上フィールド
テーブル[2012年2月]
 商品名フィールド、2月の売上フィールド
 ・
 ・
 ・
という形で持たれてるとします。

それらのテーブル12個を元に、出力結果が
商品A 1月の売上げ 2月の売上げ・・・・12月の売上げ
商品B 1月の売上げ 2月の売上げ・・・・12月の売上げ
  ・
  ・
  ・
となる選択クエリを作成して、
それをレポート作成時に使用すればよいと思います。
ただ、過去12か月分を表示させるのは、毎月クエリを作るか
VBAで作成するかになると思います。
あと、各テーブルで商品Aが複数行あるとか、
商品Bが1月テーブルにはあるけど、2月テーブルには無い、
とかなると、クエリが複雑になります。


いずれにせよ、
・テーブルのフィールド、主キー情報
・そのデータ内容、データ量
がはっきりしないと、話は始まりません。

この回答への補足

回答有り難うございます。

> ・テーブルのフィールド、主キー情報
> ・そのデータ内容、データ量
> がはっきりしないと、話は始まりません。

そこも聞きたかったことの一つです。
説明が不足していましたが、どのようなテーブルであれば、実現が可能なのか。こんなテーブル形式で、こんなコードで、こんなレポートを作れば可能ですよというような具体的なイメージがあればと思いました。

もし、お時間があれば、具体的な回答もお願いします。

補足日時:2012/06/01 10:33
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!