設定・自動化

5段階評価など選択リストの数字を数式項目で合計する

評価を選択リストで入力していても、数式項目で合計点を出せます。2023年に書いた記事を、2026年9月時点のSalesforce公式ヘルプで確かめ直し、未選択の項目があるときの扱いを書き足しました。

2023.12.05

どういうときに使うのか

面談の評価やアンケートの点数を、1から5の選択リストで入力している組織は多いです。入力する人にとっては選ぶだけで済むので楽ですが、あとで「総合点」を出そうとすると困ります。選択リストの値は数値ではないため、そのままでは足し算ができないからです。

この記事では、複数の5段階評価の合計を数式項目で表示する作り方を紹介します。

左に1から5を選ぶ選択リストの入力画面、右にミーティング・指示伝達・進捗の共有・サポートとアドバイスの値と、合計の総評価9が表示されたレコード画面
左が入力する側の選択リストで、右がレコードの表示です。4つの評価の合計が「総評価」に出ています。

数式の組み立て方

考え方は3段階です。

  1. 選択リストの値を文字にする

    数式の中で選択リストを扱うには、TEXT関数で文字に直します。例は TEXT(Meeting__c) です。

  2. 文字を数値にする

    VALUE関数で文字を数値に直します。例は VALUE(TEXT(Meeting__c)) です。

  3. 数値にした値を足す

    評価の項目ごとに同じ形で数値にし、+ でつなぎます。

VALUE(TEXT(Meeting__c))
+ VALUE(TEXT(Instruction__c))
+ VALUE(TEXT(ProgressSharing__c))
+ VALUE(TEXT(SupportAdvice__c))

4つの評価を合計する数式(すべて選ばれている前提)

項目のAPI参照名は、実際の組織に合わせて置き換えてください。Meeting__c と SupportAdvice__c は当時の記事の例、ほかの2つはこの記事で付けた仮の名前です。

未選択の項目があるときの扱い

公式ヘルプのVALUE関数の説明には、テキストが空白なら結果も空白になると書かれています。数字として読めない文字が入っている場合も、計算されずに空白になります。

評価を1つでも付け忘れると、合計が出ないことがあるということです。未選択を0点として数えたいときは、BLANKVALUEで空白を0に置き換えてから足します。

BLANKVALUE(VALUE(TEXT(Meeting__c)), 0)
+ BLANKVALUE(VALUE(TEXT(Instruction__c)), 0)
+ BLANKVALUE(VALUE(TEXT(ProgressSharing__c)), 0)
+ BLANKVALUE(VALUE(TEXT(SupportAdvice__c)), 0)

未選択の評価を0点として合計する数式

0点として数えるのか、そもそも合計を出さないのかは、評価の運用で決めてください。付け忘れを見つけたいなら、全項目を必須にする方法もあります。

項目を作る

  1. 数式項目を作る

    オブジェクトマネージャーで対象のオブジェクトを開き、「項目とリレーション」から新規の項目を作ります。データ型は「数式」、戻り値のデータ型は「数値」を選びます。

  2. 数式を入れて構文を確かめる

    上の数式を貼り付け、API参照名を置き換えて「構文を確認」を押します。

  3. ページレイアウトに置く

    評価の項目の近くに置くと、入力した人がその場で合計を確かめられます。

ここで間違えやすいところ

TEXT関数が返すのは、選択リストの値の「API参照名」です。公式ヘルプにもそう書かれています。画面に「1」と出ていても、値のAPI参照名が「1点」や「Level1」になっていると、VALUEで数値に直せず空白になります。選択リストの値を作るときは、API参照名を数字だけにしておいてください。
気をつけること理由
値のAPI参照名を数字だけにするTEXTはAPI参照名を返すため、数字以外の文字が入るとVALUEで数値にならない
数式が見るのは表示ラベルではない画面に出る表示ラベルがどうであっても、数式で使われるのはAPI参照名のほう
選択リストを直接文字と比べない公式ヘルプでは、選択リストを「Status = "Open"」のように文字と直接比べることが、エラーの原因として挙げられています。条件で使うときはISPICKVALを使います

確認した環境

  • 2026年9月時点のSalesforce公式ヘルプ(選択リストを数式で使うときのヒント、VALUE関数、BLANKVALUE関数)で、TEXTがAPI参照名を返すこと、VALUEが空白を空白として返すこと、BLANKVALUEが空白を置き換えることを確かめています
  • 画像は2023年時点の画面です。利用者名とぼかしの掛かっていた欄は白で伏せています

まとめ

  • 選択リストの数字は、TEXTで文字に直し、VALUEで数値に直してから足します
  • TEXTが返すのは値のAPI参照名なので、API参照名を数字だけにしておきます
  • 空白をVALUEに渡すと空白が返るため、未選択を0点にしたいときはBLANKVALUEで置き換えます
  • 未選択を許すかどうかは、合計の意味に合わせて先に決めておきます

Salesforceの導入・運用についてご相談ください

導入前の検討から、お使いの環境の改修・運用、AIとの連携まで承ります。状況を伺ったうえで、進め方をご提案します。