初心者のFileMaker pro Q&A (旧掲示板)

みんなに優しく、解りやすくをモットーに開設しています。 以下のルールを守りみんなで助け合いましょう。

1.ファイルメーカーで解らない事があればここで質問して下さい。 何方でも、ご質問・ご回答お願いします。 (優しく回答しましょう)

You are not logged in.

Announcement

新しい掲示板は、こちら:https://fm-aid.com/forum/t/filemaker


#1 2019-11-09 15:23:50

ゲスト
Guest

対象数の数の集計

FM10・windows7で運用しています。FMの取り扱いは初心者です。

1つのテーブル(テーブルA)に3000ほどレコードがあります。
フィールドA・B・Cはそれぞれ、2~10程度の選択肢で構成されています。
IDは一人一つで、日付は入力日、以下のような感じです。
ID   日付  フィールドA    B    C ・・・・
000  1/1       A1   B1    C1
001  1/1       A1   B2    C2
000  1/2       A2   B1    C1
002  1/2       A3   B2    C3
003  1/3       A2   B3    C3
・   ・        ・   ・     ・
・   ・        ・   ・     ・
・   ・        ・   ・     ・
とあります。このデータから別レイアウトに
フィールドA    フィールドB    フィールドC
A1  〇〇件    B1  〇〇件   C1  〇〇件
A2  〇〇件    B2  〇〇件   C2  〇〇件
A3  〇〇件    B2  〇〇件   C3  〇〇件


といった形で、集計をしてほしいとの依頼がありました。

同じテーブル内で別レイアウトの中にA抽出フィールド
を計算(PetternCount ( フィールドA; ”A1” )で、合計フィールドを集計(合計:A抽出)という形で
作成すると、欲しい数は出てきます。
ただ、ネットで「COUNTIF」等をキーワードに調べてみると、リレーションを組む方法を提示しているのがほとんどで・・・。
自身なりにテーブルAで自己リレーションを「ID」フィールドで組み、同じような形で計算・集計すると、
各IDの合計が出てしまいます。
実際としてリレーションを組まない方法で適切なのか、今後データが増えるとといったことも考慮して、
別の方法が良いか、その場合はどのような方法かご教示いただけると幸いです。

#2 2019-11-09 17:26:16

koeda
Member

Re: 対象数の数の集計

クロス集計ですね。
このQ&Aでもたびたび登場するテーマですので、検索してみるといくつも見つかります。

例えばこのスレッド
https://fm-aid.com/bbs2/viewtopic.php?id=8220

#4の回答でHiroさんがリレーションを使わない方法のサンプルを提示していらっしゃいます。
まずはこれを解析して考え方を理解されると良いと思います。
(値一覧を参照して、それをもとに繰り返しフィールドに振り分け→集計フィールドで合計)

Offline

#3 2019-11-10 08:56:29

Shin
Member

Re: 対象数の数の集計

集計機能を使った簡単なサンプルです。
https://www.dropbox.com/s/wisilsq0b8j9f … 2.zip?dl=0

Last edited by Shin (2019-11-10 10:36:29)

Offline

#4 2019-11-10 11:44:24

Hiro
Member

Re: 対象数の数の集計

提示サンプルは双方とも .fm12 フォーマットファイルだから、
質問者のFMP10 .fp7 環境では開けませんよ!

Offline

#5 2019-11-10 12:52:07

koeda
Member

Re: 対象数の数の集計

あららー。気がつきませんでした。すみません。

Offline

#6 2019-11-10 16:44:21

koko009
Guest

Re: 対象数の数の集計

集計表示テーブルを追加しリレーションを組み作ってみました。この方法ではフィールド増えればリレーションを増やさなければなりません。
アップロード先 クロス集計.fp7
http://pupld.net/28/191110/1ru3ak3l0f/index.cgi

#7 2019-11-10 18:19:40

Shin
Member

Re: 対象数の数の集計

v11で作り直しました。値一覧以外はコピペが出来るので、楽チンです。
https://www.dropbox.com/s/yf2rjke50lzug … 7.zip?dl=0

クロス集計ではありませんよ。単なる集計を、複数のフィールドに対して同時に行おうとしているだけです。

Last edited by Shin (2019-11-10 18:27:09)

Offline

#8 2019-11-11 09:09:15

ゲスト
Guest

Re: 対象数の数の集計

koeda様
Shin様
Hiro様
koko009様

懇切丁寧な返答ありがとうございます。
且つサンプルまで作成していただき、本当にありがとうございます!!
クロス集計というんですね!!正直、そこからです・・・。
リレーションに関しての概念についても勉強しつつ、
どちらの手段でも使えればと思います。非常に興味がわきました。
また、質問させていただくかと思います。
その際にはご教示頂ければ幸いです。

#9 2019-11-11 13:17:55

Hiro
Member

Re: 対象数の数の集計

終わって見ないかもしれませんが、ちょっと気になったので、

>#7Shin wrote:

https://www.dropbox.com/s/yf2rjke50lzug … 7.zip?dl=0
クロス集計ではありませんよ。単なる集計を、複数のフィールドに対して同時に行おうとしているだけです。

と云う事は、#7Shinさんサンプルも、
「目的の集計フィールド」を、あえて、「集計レイアウト」で
「後部集計パート」に限定して展開しなければならない理由もありません。
普通のレイアウトで自由なパート(ヘッダ、ボディ、フッタ)に展開OKです。

Offline

#10 2019-11-11 13:30:22

Shin
Member

Re: 対象数の数の集計

集計結果だけを表示させる、という最初の目的でしたら、任意のパートでいいのですが、
元データを 同時に表示したかったので、「目的の集計フィールド」を、あえて、「リスト表示」で「後部集計パート」に配置しています。
というのも、集計は、現在の対象レコードが対象になるので、対象外のレコードを作ると結果が異なってくることを示したかったのです。

Offline

Registered users online in this topic: 0, guests: 1
[Bot] ClaudeBot

Board footer

Powered by FluxBB
Modified by Visman

[ Generated in 0.009 seconds, 10 queries executed - Memory usage: 521.99 KiB (Peak: 526.9 KiB) ]