ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

Microsoft Office Accessコミュのデータの集計について

  • mixiチェック
  • このエントリーをはてなブックマークに追加
初めまして、リーと申します。
環境:OSはXP
soft:ACCES2003

データの集計方法について現在悩んでいます。

左側のデータを、クロス集計すると、真ん中のようなデータになります。

しかし、これでは、集計数が2以上になっているデータは「先頭」または「最後」のデータしか表示できません。

右側の様なデータ配列で最終的にはレポートで出力したいのですが、なかなかうまく行きません。

「YU-TANG's MS-Access Discovery」さんのDJoinも試してみたのですが、
仮に、班長のみを結合したクエリを作成したのですが・・・。

SELECT sample_2.組, sample_2.班, DJoin("氏名","sample_2","係1=1") AS 班員
FROM sample_2;

自分の設定の仕方が悪いようで、「組」「班」に関係なく集約してしまうようで・・・。

よろしくお願いします。


コメント(4)

こんばんは、YU-TANG です。

クロス集計クエリで欲しい結果を導出するためには、現状では必要なデータが足りません。
具体的には、同一の組と班で、さらにレコードを分けたいなら、グループ化のためのフィールドがもう一つ (たとえば「順位」のような) 必要です。でないと、レコードを分ける基準が何もありません。

SELECT
sample_2.組,
sample_2.班,
Count(sample_2.ID) AS 順位,
sample_2.係1名称,
sample_2.氏名
FROM
sample_2
INNER JOIN
sample_2 AS sample_2_1
ON
(sample_2.班 = sample_2_1.班)
AND (sample_2.組 = sample_2_1.組)
AND (sample_2.係1名称 = sample_2_1.係1名称)
WHERE
sample_2.ID<=[sample_2_1].[ID]
GROUP BY
sample_2.組, sample_2.班, sample_2.係1名称, sample_2.氏名
ORDER BY
sample_2.組, sample_2.班, sample_2.係1名称;

上のような中間クエリを使って順位フィールドを用意し、そこからクロス集計クエリを作成しましょう。
クロス集計クエリの仕組みを理解すれば、元のレコードに何が必要か見えてくると思います。慣れるとサブクエリを使ってクエリ 1 個で求めることもできますが、慣れないうちは多段クエリで分かりやすい形にしておくことをお奨めします。

それから、DJoin() はフォーム専用です。欲しい結果が得られていないのは単純に式が間違っているからですが、それはそれとしても、クエリでの使用はパフォーマンスの点でお奨めしません (公開ページにも書いてあったと思いますが)。

それでは。
YU-TANGさん

ご指導ありがとうございます。

多段クエリの組み方などをよく理解していませんでした。
うまく行きました!

また、DJoinについて、文章をよく読んでませんでした。
やり方がないものかと、苦肉の策で頑張ってみました。


また、質問なのですが、クロス集計ですが、画面上では、



となっています。

Microsoftの使用で、並び替えをしていると思うのですが、

もともとのデータとして、
係1 係1名称
1  班長
2  学習
3  食事
4  保健美化

というデータがあります。

列を 【班長】【学習】【食事】【保健美化】 と並び替えことは出来るのでしょうか?
こんばんは、YU-TANG です。

>列を 【班長】【学習】【食事】【保健美化】 と並び替えことは出来るのでしょうか?

以下の手順で可能です。

まずクロス集計クエリをデザインビューで開きます。
プロパティシートが表示されていない場合は、右クリックでコンテクストメニューから [プロパティ] を
選ぶか、または F4 キーを押して、プロパティシートを表示させてください。
プロパティシートのタイトルが「クエリ プロパティ」になっていることを確認します。
[クエリ列見出し] プロパティというのがあるはずですので、そこに以下のような値を設定してください。

"班長","学習","食事","保健美化"

これでクエリを保存します。
以上です。

詳しくは下記を参照してください。

クロス集計クエリを使用して集計データを読みやすくする - Access - Microsoft Office Online
http://office.microsoft.com/ja-jp/access/HA102295771041.aspx#2.2.1

それでは。
YU-TANGさん

なるほど!
出来ました!
ありがとうございます。

値を直接指定して、現状出来たので、もう一度勉強し直して、VBAとかでリストを可変にする
ようなものを頑張って作ります。

現在のこの状況で、やりたいことは過ごせるので長い目で頑張ります!!

ありがとうございました。

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

Microsoft Office Access 更新情報

Microsoft Office Accessのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング