| Access Tips by pPoy |
| Query | (Ac97,Ac2000,Ac2002) |
Accessで、データを集計する場合、予めそれぞれのデータがグループ分けされている必要があります。 それぞれのグループとしての情報がデータとして、格納されていなければなりません。 たとえば、あるデータを得点別に集計したいとき、そのグループの範囲が固定であれば、 ピボットテーブルを使用することにより簡単に集計できます。 (例:10 点毎に集計とか、20 点毎とか・・・) ところが、このグループの間隔が変則的な場合は、ちょっと困ります。 ユーザー定義関数を作成しても良いのですが、これは VBA が理解できる人で無ければ、 メンテナンスができなくなってしまいます。 これは、データのグループ分けをマスターテーブルに設定し、それを元にクエリーを作成する方法です。 |
|
|---|---|---|---|
「成績」 は、集計データの格納されているデータテーブルです。![]() |
「クラス」 は、グループの範囲を決定するためのマスターテーブルです。
この 「クラス」 テーブルの作成がとても大切です。 | ||
|
まず、新規にクエリのデザイン画面を開いて、 「成績」 と 「クラス」 を追加します。 但しフィールドの結合はしません。 ![]() ここで、「出席番号」 と、「得点」 フィールドは 「成績」 テーブルから持ってきます。 「クラス」 と、「範囲」 は 「クラス」 テーブルから持ってきます。 次に、得点フィールドに抽出条件式を入力します。 Between [クラス]![得点S] And [クラス]![得点E] ここの並べ替えを、 「降順」 に設定します。 | |||
無事、それぞれの得点に範囲が設定されました。後はこのクエリの 「クラス」 か 「範囲」 を元に、集計クエリを作成してください。 | |||
|
≪注意≫ 「範囲」を列名としたクロス集計クエリを作成した場合、範囲の順番には並びません。 これは文字列の昇順 (「21〜50」の方が「6〜20」より左に来ます) になるためです。 これを回避するためには、あらかじめ 「列見出しを固定」 に設定する必要があります。 「列見出しを固定」 にする方法は、こちら | |||
☆ 感想をお知らせください (直接ブラウザから送信致します。メールアカウントは不要です。)
form mail はこちら
Copyright(C) pPoy 2000-2001