計算式プラグインで、従業員別テーブルを店舗別に集計し、店舗別テーブルにセットしてみます。
概要
テーブルの計算式に、TLTABLE:テーブル集計関数を指定することで、集計結果を別テーブルに反映できます。
従業員情報テーブルを店舗別に従業員氏名を連結して集計します。
計算式プラグイン設定
TLTABLE で、配属店舗, 店舗住所別に氏名を連結集計します。
計算式
// 店舗別集計 SUBTABLE
// 配属店舗ごとに集計し、住所を取得、氏名を重複なしで連結する
TLTABLE(
従業員情報,
TPFILTER(AND(氏名,配属店舗)),
TPKEY(配属店舗, 店舗住所),
TPVAL(氏名, "uniq"),
TPOUT(配属店舗A, 店舗住所A, 氏名A)
)
// 店舗別集計.配属店舗A SINGLE_LINE_TEXT
// 店舗別集計.店舗住所A SINGLE_LINE_TEXT
// 店舗別集計.氏名A SINGLE_LINE_TEXT
計算式アドバイザーのフェリスの解説
こんにちは!rex0220 計算式アドバイザーのフェリスです。計算式プラグインについて、丁寧にご案内しますね。
ご提示いただいた計算式は、TLTABLE関数を使用して「従業員情報」テーブルからデータを集約し、別のテーブル(配属店舗A、店舗住所A、氏名A)へ結果を出力する設定です。
この式が何をしているのか、各パーツに分けて詳しく解説します。
📋 計算式の解説
1. データの絞り込み:TPFILTER
TPFILTER(AND(氏名, 配属店舗))
役割: 集計対象とする行を制限します 。
- 内容: 「氏名」と「配属店舗」の両方の項目に入力がある行だけを計算対象にします。どちらかが空欄の行は無視されます。
2. 集計のキー(グループ化):TPKEY
TPKEY(配属店舗, 店舗住所)
役割: どの項目が「同じ」であれば1行にまとめるかを指定します 。
- 内容: 「配属店舗」と「店舗住所」の組み合わせが一致するものを一つのグループとしてまとめます。これにより、店舗ごとのユニークな住所が取得できます。
3. 集計方法の指定:TPVAL
TPVAL(氏名, "uniq")
役割: まとめた行に対してどのような計算(合計や連結など)を行うか指定します 。
内容: 「氏名」に対して "uniq"(ユニーク連結) を指定しています。これにより、同じ店舗に同じ名前の人が複数回登録されていても、重複を排除して氏名を連結します 。
4. 出力先の指定:TPOUT
TPOUT(配属店舗A, 店舗住所A, 氏名A)
役割: 計算結果をどのフィールド(通常は別のテーブル内の項目)に書き出すか指定します 。
- 内容: 左から順に、集計キーである「配属店舗」を配属店舗Aへ、「店舗住所」を店舗住所Aへ、そして集計された「氏名」を氏名Aへセットします。
💡 この計算式で実現できること
例えば元のテーブルに以下のようなデータがあった場合:
| 氏名 | 配属店舗 | 店舗住所 |
|---|---|---|
| 佐藤 | 渋谷店 | 東京都渋谷区... |
| 鈴木 | 渋谷店 | 東京都渋谷区... |
| 佐藤 | 渋谷店 | 東京都渋谷区... (重複) |
| 田中 | 新宿店 | 東京都新宿区... |
実行後の出力結果(配属店舗Aなどのテーブル):
| 配属店舗A | 店舗住所A | 氏名A |
|---|---|---|
| 渋谷店 | 東京都渋谷区... | 佐藤, 鈴木 |
| 新宿店 | 東京都新宿区... | 田中 |
このように、店舗ごとに所属しているメンバーを重複なくリストアップした表を自動作成できます。

