• ベストアンサー

Access2010のレポートで出来るかどうか?

アクセス2010のレポートで、例えば、以下の様な帳票が出力可能かどうか教えてください。 商品A 1月の売上げ 2月の売上げ・・・・12月の売上げ 商品B 1月の売上げ 2月の売上げ・・・・12月の売上げ   ・   ・   ・ このようなレポートを出力する場合、どのようなレポートを作成すればよいのでしょうか? ちなみに、1~12月になっていますが、今月から過去12ヶ月分を表示するような感じで、テーブルにはその情報は入っているものとします。

質問者が選んだベストアンサー

  • ベストアンサー
  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.2

テーブルの説明がないので、勝手に想像して・・ 日付/時刻型フィールドがあれば、 直近の12ヶ月は、Dateadd関数や DateSerial関数などで、Where 条件に指定。 クエリはクロス集計クエリを使います。 ただ、単純にクロス集計クエリを作っても 月が変わるとフィールド名も変わってしまうのでレポートではそのままでは使えません。 なので・・ 説明が長くなってしまいますので、hatena さんの方法をじっくりと読んでみてください。 クロス集計クエリの列名を固定する方法 http://hatenachips.blog34.fc2.com/blog-entry-117.html

ok-rjak
質問者

補足

回答有り難うございます。 一度じっくり読んでみます。 その後、改めてお礼させて頂きます。 No.1さんにも書きましたが、実現可能なテーブル、コード、レポートを、お時間があればよろしくお願いします。

その他の回答 (2)

  • nao-y
  • ベストアンサー率58% (111/190)
回答No.3

> 説明が不足していましたが、どのようなテーブルであれば、実現が可能なのか。 > こんなテーブル形式で、こんなコードで、こんなレポートを作れば可能ですよ > というような具体的なイメージがあればと思いました。 > > もし、お時間があれば、具体的な回答もお願いします。 えっ。 データベース設計までですか。 うーん、それはもう、プロのシステム屋さんに有料で頼むレベルです。 無料で答えを出して下さる優しい方が現れるといいですね☆ 真面目な話、必要な情報が入っているテーブルなら、なんでもいいわけですよ。 極端に言えば、レポートに出したいフィールド("商品名"、"1月の売上"、…、"12月の売上")を 持ってるテーブルであれば、それをそのままレポート出力すればいいだけの話です。 それならExcelでもできます。 でも、それじゃ困るんですよね? ・元データがどんな情報を持っているか ・データベースでどんな情報を保存しておきたいか また、細かい話として、例えば、 ・データベースには商品ごとの日付と売上が入っているから  1月の売上なら、1/1~1/31の売上を集計したいとか ・1月の売上には商品Aがあるけど2月の売上には商品Aは無いとか こういった、データベース作成の背景が分かっていないと、 適当なテーブル設計はできても、適切なテーブル設計はできません。 まず、質問者さまがテーブルを設計されて、#2さんが提示された URLをよく読んで勉強して、それで分からないことがあれば またご質問ください。

ok-rjak
質問者

お礼

> えっ。 > データベース設計までですか。 > うーん、それはもう、プロのシステム屋さんに有料で頼むレベルです。 ですよねw 図々しくも聞いてみました。 > 極端に言えば、レポートに出したいフィールド("商品名"、"1月の売上"、…、"12月の売上")を > 持ってるテーブルであれば、それをそのままレポート出力すればいいだけの> 話です。 そうですね。その形式であれば出力できるのはわかります。 そのように作ってしまえばいいんですが、普通ならどんな風につくるのかなと思った次第で。独学でやっているので、常套手段というのを知らないもので。 > まず、質問者さまがテーブルを設計されて、#2さんが提示された > URLをよく読んで勉強して、それで分からないことがあれば > またご質問ください。 ありがとうございます。まずは勉強してみます。 それから、必要であれば、また新たに質問させて頂きます。 ご回答ありがとうございます。

  • nao-y
  • ベストアンサー率58% (111/190)
回答No.1

そのものズバリの答えではないんですが。 出力可能かどうかは、元テーブル次第だと思います。 例えば、元テーブルは テーブル[2012年1月]  商品名フィールド、1月の売上フィールド テーブル[2012年2月]  商品名フィールド、2月の売上フィールド  ・  ・  ・ という形で持たれてるとします。 それらのテーブル12個を元に、出力結果が 商品A 1月の売上げ 2月の売上げ・・・・12月の売上げ 商品B 1月の売上げ 2月の売上げ・・・・12月の売上げ   ・   ・   ・ となる選択クエリを作成して、 それをレポート作成時に使用すればよいと思います。 ただ、過去12か月分を表示させるのは、毎月クエリを作るか VBAで作成するかになると思います。 あと、各テーブルで商品Aが複数行あるとか、 商品Bが1月テーブルにはあるけど、2月テーブルには無い、 とかなると、クエリが複雑になります。 いずれにせよ、 ・テーブルのフィールド、主キー情報 ・そのデータ内容、データ量 がはっきりしないと、話は始まりません。

ok-rjak
質問者

補足

回答有り難うございます。 > ・テーブルのフィールド、主キー情報 > ・そのデータ内容、データ量 > がはっきりしないと、話は始まりません。 そこも聞きたかったことの一つです。 説明が不足していましたが、どのようなテーブルであれば、実現が可能なのか。こんなテーブル形式で、こんなコードで、こんなレポートを作れば可能ですよというような具体的なイメージがあればと思いました。 もし、お時間があれば、具体的な回答もお願いします。