• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:access2003 期間抽出後グループごとのカウントをレポート出力したい)

access2003 期間抽出後グループごとのカウントをレポート出力したい

このQ&Aのポイント
  • accessに挑戦している初心者が、期間を抽出しグループごとのカウントをレポート出力する方法を教えてください。
  • 歯科医院での使用目的に合わせて、カルテ番号ごとに患者情報を表示し、衛生士ごとの処置一覧をレポートで出力したいです。
  • 質問者はaccess2003でデータベースを作成し、4つのテーブルをリレーションさせる作業までは完了していますが、毎月締め日に処置一覧をレポートで出力する方法について困っています。超初心者のため、わかりやすく助言いただけると助かります。

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

  • ベストアンサー
  • yatoaa
  • ベストアンサー率30% (110/362)
回答No.1

クロス集計クエリーを作成したらいいですね クロス集計クエリーは 集計行にて  衛生士ID   グループ化を指定      処置ID    グループ化  件数把握のためには なにか数値項目を1つ適当に指定して  そこへは 「カウント」としたらいいです  **結局 3つの項目をアウトプット指定する** 「行列の入れ替え」へは  衛生士ID  列     処置ID   行  数値項目のところは カウント と指定します (件数が0件の部分は0ではなくてNULLになると思われる) (NULLを0にするには 別途 更新クェリーを作成 NULL なら 0) -------------------------------------------------- 年月日による選択は(簡易に書くと) フォームを作成して そのフォームで 年月日を2つ「テキスト項目」を作成して そこへ入力したほうが楽だと思います その2つのテキスト項目を クェリーの「抽出条件」行のところにて [Forms]![フォーム名]![フォームでの項目名] の機能を使用すれば 選択が簡単にできます between forms![フォーム名]![フォームでの項目名] and forms![フォーム名]![フォームでの項目名]

otoro
質問者

お礼

早速 やってみました。 少し迷いましたが 何とか出来そうです。 丁寧なご指導 ありがとうございました!!!

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • access2003 レポートの表示について教えて下さい

    初心者なのですが どうぞ宜しくお願い致します。 accessに挑戦しているのですが判らないことが沢山あるので お手すきの方 助言お願いいたします。 まず、やりたい事をのべます。 歯科医院での使用目的です。 1.カルテ番号を入力すると患者情報が出てきて 2.各歯科衛生士が毎日の作業(処置内容)を入力していきます。  (内容は衛生士ID、処置ID、処置日) 3.患者は月に2回来る事もあるのでデータの上書きではなく蓄積させ 4.毎月締め日に各衛生士ごとの処置一覧をレポートで出したい。 それにあたり今現在進めている作業は以下です。 [テーブル] 「患者情報」  カルテ番号、患者氏名、フリガナ、生年月日、性別  データはすべてインポート済みです。レコードは5000程です。 「衛生士マスタ」  衛生士ID、衛生士名前  3人いるので 3レコード作ってあります。 「処置内容マスタ」  処置ID、処置内容  3種あるので 3レコード作ってあります。 「処置履歴」  処置履歴ID(オートナンバー)、カルテ番号、衛生士ID、処置ID、処置日  データを蓄積させる為のテーブル [クエリ]  カルテ番号で患者情報を呼び出すための「患者情報クエリ」作成 SELECT 患者情報.患者番号, 患者情報.患者氏名, 患者情報.フリガナ, 患者情報.生年月日, 患者情報.性別 FROM 患者情報 WHERE (((患者情報.患者番号)=[カルテ番号を入力して下さい])); 期間抽出のための「処置履歴 期間抽出」作成 SELECT 処置履歴.処置日, 処置履歴.処置ID, 処置履歴.衛生士ID FROM 処置履歴 WHERE (((処置履歴.処置日) Between [forms]![期間抽出フォーム]![期間自] And [forms]![期間抽出フォーム]![期間至]));  レポートで表示させるカウントのための「処置履歴クロス集計」作成 TRANSFORM Count(処置履歴.処置履歴ID) AS 処置履歴IDのカウント SELECT 処置履歴.衛生士ID, Count(処置履歴.処置履歴ID) AS [合計 処置履歴ID] FROM 処置履歴 GROUP BY 処置履歴.衛生士ID PIVOT 処置履歴.処置ID; と、長くなりましたが ここまで完成しています。 先にも記述しました 4.毎月締め日に各衛生士ごとの処置一覧をレポートで出したい。 で悩んでいます。 最終的には↓の様に出力したいのです。  処置レポート   2009/01/21~2009/02/20 ---------------------------------------------------------  衛生士ID     処置A    処置B    処置C ---------------------------------------------------------  1.山田       5      5      6  2.鈴木       8      10      4  3.田中       0      3      20            ↑      ↑     ↑は合計数です。 [レポート] 1.ウィザードを使って「クロス集計クエリ」を元に作成しました。 (現在のところ)衛生士3人、処置内容3つですが 試しに 衛生士、処置内容とも 1つ増やしてみました。 もちろん「クロス集計クエリ」には新しいナンバーが反映されてましたが レポートには最初に作ったままの3人、3項目しか表示されず 悩んでいます。 2.レポート表示の際に 衛生士の名前、処置の名前を自動的に 反映させたいのですが(今は各ID番号のみ表示されてます) どうすればいいでしょうか? 追加: 3.今気づいたのですが、期間抽出のフォームがうまく作動していません。データに無い日付を入れても全データを集計して出してきています。 Between~ が間違っているのでしょうか? 大変長くなり、説明もわかりにくいと思いますが どなたか 超初心者の私に 噛み砕いて助言いただけたら幸いです。 どうぞ 宜しくお願い致します。

  • accessで検索&入力 データの蓄積について

    初心者なのですが どうぞ宜しくお願い致します。 accessに挑戦しているのですが判らないことが沢山あるので お手すきの方 助言お願いいたします。 まず、やりたい事をのべます。 歯科医院での使用目的です。 1.カルテ番号を入力すると患者情報が出てきて 2.各歯科衛生士が毎日の作業(処置内容)を入力していきます。  (内容は衛生士ID、処置ID、処置日) 3.患者は月に2回来る事もあるのでデータの上書きではなく蓄積させ 4.毎月締め日に各衛生士ごとの処置一覧をレポートで出したい。 それにあたり今現在進めている作業は以下です。 [テーブル] 「患者情報」  カルテ番号、患者氏名、フリガナ、生年月日、性別  データはすべてインポート済みです。レコードは5000程です。 「衛生士マスタ」  衛生士ID、衛生士名前  3人いるので 3レコード作ってあります。 「処置内容マスタ」  処置ID、処置内容  3種あるので 3レコード作ってあります。 「処置履歴」  処置履歴ID(オートナンバー)、カルテ番号、衛生士ID、処置ID、処置日  データを蓄積させる為のテーブルと思って作ったのですが  そもそもこれはいらない?? 上記4テーブルをリレーションさせ ウィザードで「処置履歴クエリ」を作成。 カルテ番号の抽出条件に  =[カルテ番号を入力してください]と入力、保存。 「処置履歴クエリ」でカルテ番号を入力するも データ出てこないので ためしに「処置履歴」テーブルに カルテ番号100でデータを入れてみました。 すると カルテ番号100を入れると出てきました。 って事は やはり「処置履歴」テーブルにはデータが入っていないといけないと言う事ですよね。 だとすると 私のテーブルの作り方が間違っていると…。 今 この段階で足踏みしています。 どなたか 超初心者の私に 噛み砕いて助言いただけたら幸いです。 どうぞ 宜しくお願い致します。

  • アクセスレポートの抽出表示

    アクセス初心者です。よろしくお願いします。 現在3つのテーブルデータをクエリで結合し、レポートに表示させています。(フォームは使ったことがありません) 内容をレポートで確認したりしたいのですが、その都度クエリで社員番号を抽出条件に入力し、レポートを表示させているのですが、社員番号を入力すると該当のレポートを表示させる方法は何かないでしょうか?

  • Microsoft Access2000で抽出?

    Microsoft Access2000でお客様の来店日を記入帳を作っているのですが、お客様のカルテ番号と名前を別クエリ(住所録 来店日記入クエリ)から 名前を抽出?検索?どちらになしたら良いか解らないのですが、来店日記入フォーム(顧客来店日テーブル/レコードソース) の名前のテキストボックスに記入したいのですがどの様にしたら良いでしょうか? 来店日記入フォーム(顧客来店日テーブル/レコードソース)のカルテ番号(テキストボックス)に記入したカルテ番号で 住所録 来店日記入クエリ(カルテ番号・名前)から名前を抽出して 来店日記入フォームの名前(テキストボックス)に記入したいんです 申し訳ございませんがよろしくお願いします

  • Accessのリポートに関して教えてください(泣)

     社内で契約書のDBを作成することになり、まったく素人の私がアクセスの本を見ながらつくっております。  使用するDBの流れはこのような感じです。  セキュリティーをかけて、社員と管理を分ける。社員はテーブルの編集できない。 そして 社員はuserとしてフォームで必要事項を記入。 そして内容がテーブルに反映される。 社員さんは、リポート形式で記入した事項を印刷をします。 リポートの形式はフォーム上のものとは違います。 IDが10だとしたら、ID10の入力事項だけが反映されるリポートというものは印刷したいです。  フォーム上で記入する事項は、書類ID(オートナンバー型)捺印申請日(Date関数で自動)、誰に出すのか(リストボックスで顧客・協力会社・その他を選択)などなどを入力してもらいます。  これらの入力した事項をレポートとしてプリントアウトしたいのです。 ただリポートの形式にはハンコを押せるスペースなども新たにあります。フォームの形で印刷はだめということです。 ここからが問題なんです。。 リポートの表示がテーブルの一番上の行が反映されるために次に入力した際に反映しません。 詳しく書きますと ID1の事項をフォームで入力する。それがテーブルに反映される。 レポートから印刷をしようとする。しっかりID1の事項が書き込まれている。 ここまではOK^^ 次に ID2の事項をフォームで入力する。しっかりID2の事項がテーブルに反映されている。 しかし! リポートのほうがID1のまま変化していません(泣) どうしたらID2の記入がリポートに反映されるのでしょうか。 助言をお願いします。 わかりにくい文ですが、皆さまよろしくお願いします。 ここの説明がわかり難いと仰っていただければ、説明を加えさせて頂きます。 助けてください(泣)

  • ACCESS 指定レコードのレポート印刷

    OKWaveでも他の方が質問していますが、同様な対応をしても、どうも正常動作しません。 内容:1.フォーム作成完了 → 2.レポート作成完了 → 3.現在フォームに表示されているレコードを(2)で作成したレポート形式で印刷(プレビュー)をしたい。 レポート名:看板 フォーム名:管理    フォーム画面上には ID を表示させています。 テーブル名:管理TBL 管理TBLには ID というフィールドはあります。 実施内容:下記内容を印刷コマンドボタンのイベントプロシジャーに記述。 Private Sub report_Click() Dim stDocName As String   DoCmd.OpenReport "看板", acViewPreview, , "[ID]=" & [Forms]![管理]![ID] End Sub 例えば、レコード3のフォーム上で上記内容のコマンドボタンをクリックすると、IDのパラメータのポップアップが表示され3を入力後、看板のレポートプレビューが表示されますが、固定データのみ表示されているレポートで当該レコードの内容が反映されたレポートが表示されません。 レコード1のフォーム上で実施したら、IDパラメータポップに1を入れると全レコードのレポートがプレビューされます。 どうしたら、カレントレコードの内容のみを反映したレポートをプレビューさせることができるのでしょうか、ご教授下さい。また IDパラメータポップアップも表示させたくありません。

  • Accessのレポートで

    お世話になります。 Access2002を使用しています。 レポートで業者への発注履歴を出力するのに、一度出力したレコードを次のレポート時に出力しないようにするには どのようにしたらいいでしょう。 発注履歴テーブルに発行済フィールドを作成し、レポートを出力したらその数値が0から1に変わり、次の出力時のクエリで1をひらわないようようにすればいいと思うのですが、その手法がわかりません。 どなたかご教授ください。

  • Access 抽出条件

    クエリの抽出条件で特定のレコードを抽出したいのですが 最新の三年分のレコードデータを抽出する場合どのような式にすればよいのでしょうか? テーブルには年月フォームがあり年月が入力されています。

  • Access2010 更新データのレポート表示

    Access初心者です。 新規データを入力しても、レポートが更新されずに困っています。 (テーブルや、フォーム内では、データは更新されています) エクセルデータをAccess2010にインポートして、元テーブルを作成しました。 元テーブルを元に、フォーム・レポート・検索クエリ(年度別・分類別)等を作成しました。 ここまでの作業で、新規データの入力はありませんでした。 ところが・・・ 新規データをフォームに入力すると、元テーブルは更新されますが、既に作成しているレポートには、新規レコードが表示(反映)されません。 更新されている元テーブルを元に、もう一度レポートを作成しても、新規レコードは表示されません。 ホームタブの「全て更新」ボタンをクリックしても、新規レコードはレポートには表示されません。 尚、Access初心者です。 「更新クエリ」なるものは、作成していません。というか、「更新クエリ」って何?状態です。 また、クエリそのものが良くわかっておらず、作成したクエリは全て「検索」のためのクエリで、抽出条件に「 [] 」を入力したり、フィールドに「 年度: Year(DateAdd("m",-3,[発送日])) 」を入力したりしかできません。 勿論、リレーションシップって何???状態です。 どうしたらよいのでしょうか??? どなたか、初心者でもわかるように、教えていただけないでしょうか? 宜しくお願いいたします。

  • 期間内のデータ抽出

    テーブル名:HOGE ID  DATE1     DATE2     FLG ------------------------------------------------------------ 001  2012-07-01  2012-07-15  0 002  2012-07-10  2012-07-20  0 003  2012-07-01  2012-08-01  0 004  2012-07-05  2012-07-19  1 005  2012-07-20  2012-07-31  0 006  2012-07-07  2012-07-15  0 で、本日の日付(2012年7月9日)がDATE1~DATE2に入る、かつFLGが0のレコードだけ抽出したいです。 上記の場合、 ID 001 003 006 この様に抽出したいのですが、宜しくお願い致します。