kintoneのテーブルで条件付き集計をする方法【SUMIF・COUNTIFの使い方】

kintoneの見積明細で「特定の商品だけ数量を合計したい」「条件に合う明細が何行あるかを確認したい」とき、テーブル全体の合計だけでは目的の数字が分かりません。まず、数値を足したいのか、行数を数えたいのかを決めると、集計方法と必要なフィールドを整理できます。

この記事では、標準の合計との使い分け、無料のテーブルIF計算プラグインによるSUMIF・COUNTIFの設定方法、実際の画面と動画、結果が更新されない場合の確認点を紹介します。

テーブル全体の合計と、条件付き集計の違い

テーブル全体の数値合計は、標準のSUM関数が候補です。たとえば小計フィールドのコードが「小計」なら、テーブル外の計算フィールドにSUM(小計)を設定します。行ごとの金額計算や合計方法はkintone公式ヘルプで確認できます。

一方、商品名や状態などの条件で対象の行を絞りたい場合は、条件の判定と集計を組み合わせる必要があります。標準の計算式で対応できる構成かを確認し、条件項目・比較方法・出力先を設定画面で指定したい場合に、テーブルIF計算プラグインを検討します。この記事のSUMIF・COUNTIFはプラグイン内の計算方法の名称で、標準の計算式へそのまま入力する手順ではありません。

SUMIFは数量・金額の合計、COUNTIFは明細の行数

SUMIF:条件に合う数値を足す

対象の行から数量・金額などの数値を合計します。「商品aaaの数量を合計する」「特定費目の金額を合計する」といった用途です。

COUNTIF:条件に合う行を数える

対象の行が何行あるかを数えます。「商品aaaの明細が何行あるか」「要対応の点検項目が何件あるか」といった用途です。

例えば、次の3行を持つテーブルで、商品名が「商品aaa」と一致する条件を設定します。

  • 商品aaa:数量100
  • 商品aaa:数量200
  • 商品bbb:数量50

この場合、SUMIFは数量の合計300、COUNTIFは対象の行数2です。つまり、COUNTIFでは数量ではなく行を数えます。

なお、この数値例は説明用のデータであり、下の動画とは別の内容です。

設定前に用意するフィールド

  • 対象テーブル:見積明細など、1レコード内の明細を配置します。
  • 条件項目:商品名・区分・状態など、対象行を判定する項目です。
  • 合計対象項目:SUMIFで数量・金額を合計するための、テーブル内の数値フィールドです。
  • 出力先:テーブル外に数値フィールドを配置します。合計と件数を表示するなら、別々のフィールドを用意します。

出力先には標準の「計算」フィールドではなく「数値」フィールドを使います。COUNTIFだけなら合計対象項目は不要です。集計対象は現在のレコード内であり、アプリ内の全レコードを横断する集計ではありません。

設定例①:商品名に「aaa」を含む行の数量をSUMIFで合計する

  1. 詳細ページの無料ZIPを取得し、管理者がkintoneシステム管理で読み込んで検証用アプリへ追加します。
  2. 設定画面の「対象テーブル」で「見積明細」を選びます。
  3. 「計算方法」を「SUMIF(合計)」にします。
  4. 「条件項目」を「商品名」、「条件」を「含む」、「条件値」を「aaa」にします。
  5. 「合計対象項目」を「数量」、「計算結果の数値フィールド」をテーブル外の「sumif」にします。
  6. 編集トリガーに商品名・数量など、変更時に再計算したい項目を選びます。
  7. 設定を保存してアプリを更新し、追加・編集画面で対象の行と合計を確認してレコードを保存します。

複数条件をAND/ORで組み合わせる

「条件項目」「条件」「条件値」を1行で指定し、「条件を追加」から判定条件を増やせます。ANDはすべての条件に合う行、ORはいずれかの条件に合う行が集計対象です。

下の設定画像は、商品名に「aaa」を含み、かつ型番に「AA」を含む行の数量を合計するANDの例です。ORへ変更すると、商品名または型番のどちらかに合う行が対象になります。同じ行が複数の条件に合っても、1行として集計します。

項目に応じた条件値の指定

日付は日付入力、ドロップダウン・ラジオボタンは選択肢、チェックボックスはチェック形式、ユーザー・組織・グループは候補の選択で条件値を指定できます。

日付の「今日から○日以内」「直近○日」

日付項目を条件にすると、今後の期限や直近の実績を日数で絞れます。例えば、7日を指定した場合の範囲は次のとおりです。

  • 今日から7日以内:今日から7日後まで。
  • 直近7日:7日前から今日まで。

どちらも両端の日付を含みます。再計算時に、利用端末の日付を基準として判定します。

ただし、日付が変わっただけで保存済みレコードが一括更新される機能ではありません。

従来の単一条件設定も利用できます。条件を追加したときは、その条件項目も編集トリガーに指定し、設定保存後にアプリを更新してください。

テーブルIF計算プラグイン1.0.3で商品名と型番をAND条件に指定して数量をSUMIFで集計する設定
商品名に「aaa」を含み、型番に「AA」を含む行をANDで絞り、数量を合計します。

「含む」と「一致する」は対象行が異なります。「含む」でaaaを指定すると、商品aaaのほか、aaaを文字列内に含む別の商品名も対象です。商品名を限定したい場合は「一致する」と実際の値を設定します。

設定例②:同じ条件の行数をCOUNTIFで確認する

  1. 「計算設定を追加」で新しい設定を用意します。
  2. 対象テーブルと条件項目・条件・条件値を、集計したい対象に合わせて指定します。
  3. 計算方法を「COUNTIF(件数)」にします。
  4. 計算結果の数値フィールドに、テーブル外の「countif」を選びます。SUMIFと同じ出力先を使わないようにします。
  5. 商品名など、行が条件に合うかどうかを変える項目を編集トリガーに指定します。
  6. 設定保存とアプリ更新の後、条件に合う行数と保存後の値を確認します。

利用動画:単一条件で数量と商品名を変更したときの結果

実際の動画では、対象行の数量を300から500へ変更するとsumifが500になり、別の行の商品名を「商品ccc」から「商品aaa」へ変更するとcountifが1から2になります。追加の対象行の数量は空欄のため、件数は増えても数量合計は500のままです。

再生ボタンで約11秒の操作例を確認できます。

結果が更新されないときに確認する5つのポイント

  • 設定後にアプリを更新したか:設定保存だけで止まっていないか確認します。
  • 編集トリガーに変更した項目が含まれるか:数量を変えて合計を更新したいなら数量、対象行を変えたいなら条件項目を指定します。
  • 条件の表記が合っているか:「含む」と「一致する」の違い、空白、商品名の表記、条件値を確認します。
  • 出力先が正しいか:テーブル外の数値フィールドを指定します。複数の計算で同じ出力先を使うと結果が上書きされるため分けます。
  • 画面の値を保存したか:追加・編集画面で表示された結果は、通常のレコード保存で反映します。

詳細画面の再計算ボタンは任意で設定でき、そのレコードの集計結果を保存します。操作する利用者には、対象レコード・結果フィールドを編集する権限が必要です。

導入前に確認したい範囲と制約

計算設定1件に条件を複数追加し、AND(すべて一致)/OR(いずれか一致)で結合できます。従来の単一条件設定も引き続き利用できます。CSV読み込みやAPI更新を契機とした自動計算、保存済みの全レコードをまとめて更新する処理も行いません。

PC・モバイル用の処理を備えています。実際に使うアプリ・端末で、条件に合う行/合わない行、空欄、数値の変更、保存後の結果を確認してください。同じ項目を変更する別のプラグインやJavaScriptがある場合は、組み合わせも確認します。

テーブルの入力・取得も改善したい場合

「明細を用意する」と「用意した明細を集計する」は異なる作業です。毎回同じ行を表示したい場合はテーブルデータ初期表示、別アプリの明細を取り込みたい場合はテーブルルックアップが候補です。用途の違いはkintoneのテーブル入力を効率化する方法で紹介しています。併用する場合は、行の置き換えや取得と再計算のタイミングを検証してから運用します。

よくある質問

数量が空欄の行もCOUNTIFで数えますか?

条件に合う行なら件数の対象です。SUMIFでは空欄や数値として解釈できない値を0として扱うため、行数と合計は別々に確認します。

「再計算」を押せば全レコードが更新されますか?

表示中のレコードが対象です。全レコードをまとめて集計し直す機能ではありません。

導入前に確認できる素材はありますか?

この記事の設定画面と動画に加え、プラグイン詳細ページで対応する比較条件、仕様、無料ZIP、リリース情報を確認できます。

自社の集計条件・アプリ設計を相談する

集計したい数量・金額・件数と、対象行を選ぶ条件を整理すると、必要な項目が決めやすくなります。出力先や複数プラグインの組み合わせに迷う場合は、現在の明細と確認したい数字をお知らせください。