Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


3148 / 9994 ←次へ | 前へ→

【10108】Re:集計方法について
回答  小僧  - 07/12/19(水) 9:58 -

引用なし
パスワード
   ▼あおぎん さん:
こんにちは。


>Q_紹介状のもと で
>社員コード 種別  判定    番号
>1   肝機能  要精密検査   1
>2   肝機能  要精密検査   1
>2   糖代謝  要精密検査   2
>3   胃部X線 要精密検査   1
>3   脂質   要精密検査   2
>
> こんな感じで、社員コードごとに番号を付けることが出来たら、
> クロス集計で目的のデータが取得できそうなのですが・・。

SELECT Q_紹介状のもと.社員コード,
    Q_紹介状のもと.種別,
    Q_紹介状のもと.判定,
    "番号_" & DCount("*","Q_紹介状のもと","社員コード=" & [社員コード] & " AND 種別 >='" & [種別] & "'") AS 番号
FROM Q_紹介状のもと;

のような SQL で結果を求める事は可能です。


ですが、元々の Q_紹介状のもと 自体が
ユニオンクエリを使っていらっしゃる事、
クエリの中に定義域集計関数(今回は DCount関数) を使うことによって
速度面でのパフォーマンスは期待できないかもしれません。
(お使いのPCの性能にもよりますが…)

件数が少なければ問題はないのですが、
もし大量な件数の中から何枚ものレポートを発行しなければいけない場合は
抽出条件が変わる度に何回も再計算しなければいけない為、
クエリでなく、いったんワークテーブルに格納する方が良いかもしれませんね。


※クロス集計クエリを使った際、フィールド名が「1」「2」のようですと
 不安定な動作になる事がありますので、
 「番号_1」「番号_2」の様になる様に修正しております。

804 hits

【10106】集計方法について あおぎん 07/12/18(火) 16:51 質問[未読]
【10108】Re:集計方法について 小僧 07/12/19(水) 9:58 回答[未読]
【10110】Re:集計方法について あおぎん 07/12/19(水) 16:22 質問[未読]
【10111】Re:集計方法について 小僧 07/12/20(木) 13:27 回答[未読]
【10113】Re:集計方法について あおぎん 07/12/21(金) 15:12 お礼[未読]
【10112】Re:集計方法について 小僧 07/12/20(木) 13:30 発言[未読]
【10114】Re:集計方法について あおぎん 07/12/21(金) 17:50 お礼[未読]

3148 / 9994 ←次へ | 前へ→
ページ:  ┃  記事番号:
1078201
(SS)C-BOARD v3.8 is Free