Accessでレポート印刷方法を解説

このQ&Aのポイント
  • Access初心者でも簡単にレポートを印刷する方法をご紹介します。
  • 商品出荷データのテーブルを使って、特定の条件に合致するデータのみを印刷する方法を解説します。
  • 具体的な手順や注意点を紹介するので、Accessでのレポート印刷に困っている方には必見の情報です。
回答を見る
  • ベストアンサー

Access フィールドを選択してレポート印刷

Access初心者です。 ↓このようなテーブルがあり、 IDー年1ー月1-商品1ー値段1ー年2-月2-商品2ー値段2-年3-月3-商品3ー値段3 1-2015-01-りんごー100 2-2014-02-みかんー150-2015-06-ぶどうー200-2014-01-りんごー120 3-2014-11-ぶどうー180-2015-01-みかんー120 レポートで例えば1月に出荷した商品だけを ID  年  月  商品 1  2015 01  りんご 2  2014 01  りんご 3  2015 01  みかん このように印刷したいです。 どこでどのようにすれば良いのか 易しく教えていただければありがたいです。 宜しくお願いします。

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

  • ベストアンサー
  • tamu1129
  • ベストアンサー率58% (1257/2145)
回答No.1

>↓このようなテーブルがあり、 まさにExcel使っている人が作りそうなテーブルですね データベースを作成する場合には、そういったテーブルの作成の仕方はしません 作成するテーブルは IDー年ー月-商品ー値段 という項目のテーブルを作成します で、データ入力を 1-2015-01-りんごー100 2-2014-02-みかんー150 2-2015-06-ぶどうー200 2-2014-01-りんごー120 3-2014-11-ぶどうー180 3-2015-01-みかんー120 のように行うのです okcat1227 さんが作成したテーブルではデータが3件のみしかありませんが、本来ならば6件のデータがテーブルに保存されている状態でなければデータベースとしてはおかしいのです で、入力したデータの中から  月 項目の中のデータが 01 になっている物を抽出して、IDの数値でグループ化させるクエリを作成する このクエリを元にレポート作成するっていうような手順になります 今のうちに、データベースのテーブル構築と入力したデータの抽出をきっちり理解しておいた方が良いですよ データベースはワークシートとは違うのです

okcat1227
質問者

お礼

勉強になりました。 いま必死にテーブルを作りなおしています。 また分からないことが出てきたので改めて質問しようと思います。 機会があればまた回答お願い致します。 ありがとうございました。

その他の回答 (2)

  • piroin654
  • ベストアンサー率75% (692/917)
回答No.3

No2です。 No2の一部表記を訂正します。 (3)の SELECT T2.ID, T2.年, T2.月, T2.商品, T2.値段 FROM T2 WHERE (T2.月)=[日付入力]; を、 SELECT T2.ID, T2.年, T2.月, T2.商品, T2.値段 FROM T2 WHERE (T2.月)=[月入力]; のようにしてください。パラメータの標題を「月入力」とします。 変更しなくても、月を入力すればいいのですが。 それから、(4)の、   パラメータの「日付入力」 という文章は、   パラメータの「月入力」 としてください。二ヶ所あります。 以上です。 なお、テーブルの構成は本来、No2の「T2」のようなフィールドの 構成にすべきで、このようにしないと後でとんでもない目にあいます。

okcat1227
質問者

お礼

いま必死にテーブルを作り直しています。 また分からないことが出てきたので改めて質問しようと思います。 機会があればまた回答お願い致します。 ありがとうございました。

  • piroin654
  • ベストアンサー率75% (692/917)
回答No.2

>易しく教えていただければありがたいです。 と言われても、内容は少し長く、面倒ですが、最後まで見てください。 (1) まず、このままのテーブルではどうしようもないので、 テーブルのデータを別の新しいテーブルに切り出します。 データのある元のテーブルを「T1」、新しいテーブルを 「T2」とします。 新しいテーブル「T2」のフィールドは、  ID    年   月  商品  値段 IDはオートナンバーにせずに数値型、あるいはテキスト型 にしておいてください。その他はテキスト型でもいいのですが。 問題があれば補足してください。 (2) 次に、以下のプロシージャを標準モジュールに 貼り付け、保存してください。そしてこれを 実行してください。 元のテーブル「T1」は実際のテーブル名に変更 してもかまいません。 なお、実際の元のテーブル「T1」のフィールド数の 設定が質問通りであるとします。フィールドの設定 が実際には違っていたら補足してください。 なお、下記ではDAOを使っているのでコード表で DAOのチェックを確認してください。 「ツール」「参照設定」から、 Microsoft DAO xx Object Library にチェックが入っているか確認してください。 Accessのバージョンにもよりますが、xxは3.6とか そのような数字です。 Sub test() Dim db As DAO.Database Dim rs1 As DAO.Recordset Dim rs2 As DAO.Recordset Dim j As Integer Set db = CurrentDb Set rs1 = db.OpenRecordset("T1") Set rs2 = db.OpenRecordset("T2", dbOpenDynaset) rs1.MoveFirst Do Until rs1.EOF   For j = 1 To rs1.Fields.Count - 1   If Not IsNull(rs1.Fields(j)) Then   rs2.AddNew   rs2!ID = rs1!ID   rs2!年 = rs1.Fields(j).Value   rs2!月 = rs1.Fields(j + 1).Value   rs2!商品 = rs1.Fields(j + 2).Value   rs2!値段 = rs1.Fields(j + 3).Value   rs2.Update   End If   j = j + 3   Next j rs1.MoveNext Loop rs1.Close: Set rs1 = Nothing rs2.Close: Set rs2 = Nothing db.Close: Set db = Nothing End Sub これで、あたらしいテーブル「T2」に「T1」の データがすべてコピーされます。 (3) 次に、クエリを一つつくります。 「T2」はテーブル名です。 SELECT T2.ID, T2.年, T2.月, T2.商品, T2.値段 FROM T2 WHERE (T2.月)=[日付入力]; これを新しい、クエリをデザインビューで開き、 SQLビューに変更して上記を貼り付け保存します。 クエリの名前を「Qクエリ」としておきます。 (4) 次に、レポートの新規作成か「表形式」を選択し、 「基になるテーブルまたはクエリの選択」で 上記のクエリを選択し、「OK」とします。 すると、パラメータの「日付入力」を求められるので 「01」と入力すると、質問のようなデータが レポートに表示されます。 レポートを適当な名前で保存します。 次回、開くときも同様なパラメータの「日付入力」 が表示されるので、任意の月を入力すればデータが あれば、データが表示されます。 わからないところがあれば補足してください。

okcat1227
質問者

お礼

とても分かり易く答えてくださりありがとうございました。 少しずつやってみます!

関連するQ&A

  • Access2010 レポートについて

    商品というテーブルと商品マスターというテーブルがあります。 商品テーブルに入力した商品コードをもとに、商品マスターから直接レポート上に単価の項目を呼び出したいのですが、どうすれば良いのですか? (両テーブルの商品コードが一致した場合、マスターテーブルの単価の項目を呼び出す) クエリで必要な項目を表示させ、レポートにするしか方法はないのでしょうか? 【商品テーブル】 商品コード   商品名      個数  123     りんご        10  456     みかん       20  789     バナナ       30 【商品マスター】 商品コード   商品名      単価  123     りんご       100  456     みかん       200  789     バナナ       300 【レポート】※商品テーブルをもとに 123   個数    単価 りんご    10    100 ←商品マスターから直接表示したい

  • Access2010 レポートについて

    商品というテーブルと商品マスターというテーブルがあります。 商品テーブルに入力した商品コードをもとに、商品マスターから直接レポート上に単価の項目を呼び出したいのですが、どうすれば良いのですか? (両テーブルの商品コードが一致した場合、マスターテーブルの単価の項目を呼び出す) クエリで必要な項目を表示させ、レポートにするしか方法はないのでしょうか? 【商品テーブル】 商品コード   商品名      個数  123      りんご        10  456      みかん       20  789      バナナ       30 【商品マスター】 商品コード   商品名      単価  123      りんご       100  456      みかん       200  789      バナナ       300 【レポート】※商品テーブルをもとに 123    個数    単価 りんご    10     100 ←商品マスターから直接表示したい

  • Access レポートで税込みの値段を表示したい

    Access初心者です。(Access2000を使っています) 見積書をレポート機能で自動作成したいのですが、 以下の操作が上手くできません。 --- 下記のような、レポートを作成したいのですが、 商品一覧が入っているテーブル(商品テーブル)には、「税抜き単価」しか入っていません。 ★の部分は、商品テーブルの「税抜き単価」×「消費税率」をかけたものを表示させたいのですが レポートを表示すると、「#Error」と表示されています。 (詳細)では、計算式は入力できないのでしょうか・・・? (レポート ヘッダー) (ページ ヘッダー) ■内訳 No.  商品名 数量 単価(税込み) 金額 (受注ID ヘッダー) (詳細) 1 りんご   1 \105★ \105 2 みかん   1 \105★ \105 3 ばなな   1 \105★ \105 4 いちご   1 \105★ \105 (受注ID フッター) 合計数 4点       小計   \420 送料   \200 合計   \620 (ページ フッター) (レポート フッター)

  • ACCESS レポートをテーブルへ

    お世話になります。 WINXP・ACCESS2000にてレポートをテーブルへ、テーブルからエクセルへエクスポートしたく迷っています。最終的にはエクセルになれば良いのですが、なぜ、クエリではないかと言うと、グループ合計をレポートの集計オプションで行っています。 例(野菜グループ・雑貨グループ) スーパー在庫 野菜  リンゴ  5個  みかん  2個 野菜 合計 7個 雑貨  なべ   6個  食器   6個 雑貨 合計 12個 このグループ合計まで、エクセルにエクスポートしたいのですが 教えて下さい。 宜しくお願い致します。

  • Accessで重複データを結合するには?

    こんにちわ、みなさん。 Access超初心者です。よろしくお願いします。 Accessのテーブルで下記のようなデータがあるとします。  店名  | 商品 |  A店  |リンゴ |  A店  |トマト |  A店  |ナシ  |  B店  |リンゴ |  B店  |みかん | これを下記のように店名ごとに商品名を結合したいのです。 (レポートではなく、テーブルにしたいです)  店名  | 商品        |  A店  |リンゴ;トマト;ナシ |  B店  |リンゴ;みかん    |   重複クエリーを使えばと思ったのですが、 思ったとおりにはなりませんでした。。 どうぞ、よろしくお願い致します。m(__)m ---------------------------------------- OSは、Windows 98 アプリケーションは、Access 2000 です ----------------------------------------

  • ACCESSのレポート作成方法

    ACCESSでレポートを作成したいと考えています。 お客様から注文が入り次第、「氏名」と「商品名」をフォームに入力します。 商品は1個が500円で、2個目以降は400円となります。 例えば、山田太郎さんから「みかん」と「リンゴ」と「キウイ」の注文が入った場合、フォームにそれぞれ手打ちした後、下記のようなレポートで出力したいと考えています。 氏名 山田太郎 商品 みかん 500円    リンゴ 400円    キウイ 400円 合計     1300円 これらを実現するには、どのような方法でテーブル、フォーム、レポートを作成すればよいのでしょうか?ご教授のほどよろしくお願いいたします。

  • accessのレポートで困ってます。

    受注伝票を印刷するためのレポートを作っていますが 複数商品を購入した際に購入商品を全て表示させる方法が分かりません。 Access2002で受注管理のテンプレートを 自分なりにカスタマイズして使っています。 受注に関するテーブルは3つあります。 関連するフィールドは下記の通りになっています。 【受注】  受注ID … key   【商品】  商品ID … key  商品名  単価 【受注明細】  受注明細ID … key  受注ID … 受注テーブルの受注IDと一対多  商品ID … 商品テーブルの商品IDと一対多  数量  単価 レポートには、複数商品を購入した場合に 全ての商品名と購入数、価格を表示させたいと思います。 どうぞよろしくお願いいたします。

  • Access2002の印刷で・・・。

    お世話になります。 商品情報(ID、商品名、画像)を印刷したいのですが、商品テーブルには100件データが入っていて、印刷プレビューするとレポートの右下に1/100というふうに出ています。これを指定したIDだけ印刷するにはどうしたらいいでしょうか?40と検索してもプレビューすると1/100となってしまします・・・。 よろしくお願いします!

  • 差し込み印刷用のデーターを作る

    差し込み印刷用のデーターを作る 「エクセル1」のようなフォーマットのデータを「エクセル2」のようなフォーマットに変換したいと思います。 差し込み印刷用のデータを作りたいのですが、データが沢山あり、手作業(コピー&ペースト)では膨大な時間がかかってしまうので、大変困っています! もしお分かりになる方がいらっしゃいましたら、よろしくお願いします。 <エクセル1> 列A------列B 1-------りんご 空白-----みかん 空白-----もも 2-------なし 空白-----ぶどう 空白-----もも 空白-----みかん 3-------みかん 空白-----もも 空白-----りんご ↓↓↓ <エクセル2> 列A------列B----列C----列d----列e 1-------りんご--みかん--もも 2-------なし----ぶどう--もも--みかん 3-------みかん--もも----りんご

  • Accessのクエリーで。

    テーブルA ID テーブルB ID 年 種類 テーブルC ID 年 種類 備考 テーブルCはBの詳細をかいたようなものになっていて、希望した時だけみられるようになっています(クリックする)。 これらのテーブルをもとにクエリーを作成しました。 テーブルA-B-Cの「ID」でリレーションがされています。 B-Cの「年」もリレーションされています。 たとえば、10というIDの人がいて、2001年と2002年のデータがあったとします。 ID | 年   | 種類 | 備考 10 | 2001 | みかん | 10 | 2002 | りんご | 青森産 10 | 2002 | みかん |愛媛産 10 | 2002 | めろん | というような感じだとします。 これがそれぞれABCに入っています。 クエリーのリレーションで「種類」にリレーションを貼らないと、 10 | 2002 | りんご | 青森産 10 | 2002 | りんご | 愛媛産 10 | 2002 | りんご | 10 | 2002 | みかん | 青森産 10 | 2002 | みかん | 愛媛産 10 | 2002 | みかん | 10 | 2002 | めろん | 青森産 10 | 2002 | めろん | 愛媛産 10 | 2002 | めろん | とダブッてしまい、「種類」でリレーションをはると 10 | 2002 | りんご | 青森産 10 | 2002 | みかん | 愛媛産 と、備考に何かが入ってるものしか出なくなってしまいます。 これを回避するにはどのようにしたらいいのでしょうか? よろしくお願いします。 AC2000です。

専門家に質問してみよう