hatena
hatena
2019/07/24 (水) 11:23:40
グループヘッダーとなるとリンク先の方法では無理ですね。
方法としては2つ考えられます。
1.集計クエリでグループ件数を計算して、それをレポートのレコードソースのクエリと結合して、それをレコードソースとする。
2.VBAでレポートのフォーマット時でグループ件数を取得して連想配列に格納して、印刷時にグループヘッダーで出力する。
1.の方法で回答します。
まず、現状の集計クエリからクエリを作成して、フィールドAとフィールドBを表示させて、
クエリプロパティの「固有の値」を「はい」にします。
これで、フィールドBの重複が排除された出力が得られます。
フィールドA | フィールドB |
---|---|
チームうさぎ | みかん株式会社 |
チームうさぎ | 株式会社りんご |
チームぞう | 合同会社いちご |
チームわに | 株式会社メロン |
さらにクエリを新規作成して上記のクエリを追加して、集計クエリにして、下記のように設定します。 |
フィールドA グループ化
フィールドB カウント
これで、重複を排除した件数が取得できます。
フィールドA | フィールドBのカウント |
---|---|
チームうさぎ | 2 |
チームぞう | 1 |
チームわに | 1 |
このクエリをレポートのレコードソースのクエリと結合させてレポートのレコードソースにすれば、
ご希望の件数をグループヘッダーに表示できます。
通報 ...
回答いただきありがとうございます。
1の方法で試しまして解決しました!
Access使い始めて間もないので、一つの目的に対していくつものクエリを重ねてよいものか、プロパティなどをいじれば少ない工数でできるのではないか、といろいろ考えて手詰まっておりましたが…。もっとシンプルに、単純なクエリで一つ一つ進めればいいのだなと思いました。
2の方法は私には難しいと思うので、もう少しAccessとVBAに慣れてから勉強することにします。
ありがとうございます。