数式項目の作成

数式項目の作成

問い合わせの目標解決時間までの残り時間やサービスに関連付けられている費用など、顧客サポート業務において担当者やマネージャーはさまざまな指標データを確認する必要があります。これらの指標データを手動で計算するのには時間も手間もかかります。また、手動での計算の場合、出力値が正しくないこともあります。このような場合に、数式項目が役立ちます。数式項目を使用することで、さまざまな指標データを自動で計算できます。

数式項目の計算は、既存の項目のデータをもとに行われます。計算に使用するデータを毎回手動で入力する必要はありません。数値、テキスト、日付など、さまざまな種類の値を計算できます。また、複数の項目のデータをもとに、高度な数式による計算を行うことも可能です。数式項目の設定後に計算対象の項目のデータが変更されると、出力値が自動で更新されます。そのため、最新のデータを常に把握できます。

たとえば、オンラインストアの返品を扱う顧客サポートチームがあるとします。このチームでは、顧客から受け付けた返品の問い合わせに関して、返品時の送料、再在庫費用など、返品によって発生する費用の合計を計算し、商品の元の価格を考慮した上で、売上の計算に正しく反映させる必要があります。このような場合に、数式項目が役立ちます。


返品に関する新しい問い合わせが作成されたり、既存の問い合わせが更新されたりすると、数式項目において出力値が更新されます。サポートチームの担当者は、最新の情報を常に把握できます。各種指標データを自動で計算できるため、業務の効率化に役立ちます。また、優先度を設定して対応を進めることで、顧客満足度の向上につなげることが可能です。


情報必要な権限
数式項目を作成するには、レイアウトと項目の管理の権限が必要です。
各プランの機能と制限を確認する

数式で使用される演算子

演算子とは、数学演算、論理演算、比較演算などの演算を行うために数式内で使用される記号です。演算子をもとにデータの計算が行われ、値が出力されます。演算子は、算術演算子、論理演算子、数式要素の3種類のカテゴリーに分類されます。 

カテゴリー
演算子
出力値
算術演算子
+
対応時間の合計(3時間) + 保留時間(2時間) = 5時間。保留時間を含む合計時間が出力されます。

-
期限(48時間) - 経過時間(30時間) = 18時間。問い合わせの目標解決時間までの残り時間が出力されます。

*
時間単価(2,000円) * 対応時間の合計(3時間) = 6,000円。時間単価に基づく費用の合計が出力されます。

/
費用の合計(2,000円) / 担当者数(3人) = 6,000円。担当者1人あたりの費用が出力されます。

^
累乗を計算します。

例:エスカレーション回数(2回) ^ 時間要素(3時間) = 8回。時間の要素に応じたエスカレーションの回数が出力されます。

%
問い合わせの件数の合計(20件) % 未解決の問い合わせの件数(3件) = 2件。問い合わせを割った際の残りが出力されます。
論理演算子
&
複数の条件をすべて満たす場合、真(True)を出力します。いずれかの条件を満たさない場合は偽(False)を出力します。

例:問い合わせ(未完了) & 優先度(高) = TRUE。この場合、該当の問い合わせは未完了であり、優先度が「高」であることを表します。

|

複数の条件のいずれかを満たす場合、真(True)を出力します。すべての条件を満たさない場合は偽(False)を出力します。

例:問い合わせ(未完了) | 優先度(低) = TRUE。この場合、最初の条件(問い合わせが未完了)が真(True)であれば、2番目の条件(優先度が低)の真偽にかかわらずTRUEが出力されます。

!
演算子の真偽値の逆の値が出力されます。
例:!SLAの違反(TRUE) = FALSE

==
2件の値が同じかどうか判定します。 

例:優先度(高) == 重要度(高) = TRUE。両方の値が同じであるため、真(True)が出力されます。

!=
2件の値が異なるかどうかを判定します。 

例:優先度(高) != 重要度(低) = TRUE。両方の値が異なるため、真(True)が出力されます。

>
経過時間(4時間) > 予定時間(3時間) = TRUE。経過時間が予定時間を上回るため、真(True)が出力されます。

>=
問い合わせの目標解決時間までの残り時間(5時間) >= 経過時間(5時間) = TRUE

<
解決した問い合わせの件数(8件) < 問い合わせの件数の合計(10件) = TRUE

<=
遅延時間(2時間) <= 遅延時間の上限(3時間) = TRUE
数式要素
(
(合計時間(3時間) + 保留中の時間(2時間)) = 5時間。サブの数式の開始文字です。合計時間と保留中の時間の合計が先に計算されます。

)
(合計時間(3時間) + 保留中の時間(2時間)) = 5時間。サブの数式の終了文字です。


"
 "優先度:高"。二重引用符内の値がテキスト(文字列)であることを表します。

 数式で使用される関数

関数とは、既存の項目のデータから新しいデータを出力するための計算式です。数式を使用して値を出力する際に使用されます。以下では、関数のデータの種類ごとに説明します。

1.数値と小数の関数

これらの関数は、数式内において数値の計算を実行するために使用されます。四捨五入を行ったり、絶対値を特定したりすることができます。また、時間の差分や顧客満足度の評価の平均を計算することも可能です。


関数
説明
使用方法
Abs
数値の絶対値を出力します。
Abs(数値)
Abs(問い合わせの返信時間 - SLAの時間)
Ceil
入力値以上の値のうち、最小の整数値を出力します。
Ceil(数値)
Ceil(問い合わせの平均評価)
Floor
入力値以下の値のうち、最大の整数値を出力します。
Floor(数値)
Floor(問い合わせの平均評価)
Naturallog
数値の自然対数を出力します。
Naturallog(数値)
Naturallog(解決時間)
Base10log
入力値の常用対数を出力します。
Base10log(数値)
Base10log(問い合わせの件数)
Max
指定されている数値の一覧から最大値を出力します。
Max(値1, 値2,……)
Max(返信時間1, 返信時間2, 返信時間3)
Min
指定されている数値の一覧から最小値を出力します。
Min(値1, 値2,……)
Min(返信時間1, 返信時間2, 返信時間3)
Sqrt
入力値の平方根を出力します。
Sqrt(数値)
Sqrt(解決時間)
Tostring
引数をテキスト(文字列)に変換します。
Tostring(引数)
Tostring(問い合わせID)

2.テキスト(文字列)の関数

テキスト(文字列)の関数は、文字数を出力したり、該当するテキストが入力値にあるかどうかを確認したりするのに使用されます。問い合わせの説明や顧客からのコメントにおいて、特定の情報があるかどうかを検索できます。検索結果をもとに、対応の優先度を変更し、内容に応じて対応を進めることが可能です。


関数
説明
使用方法
Len
テキストの文字数を出力します。
Len(テキスト)
例:Len(顧客のメッセージ)

Len('商品の問い合わせ')の場合、8を出力します(テキストのメッセージが簡潔か、詳細に記載されているかどうかを確認できます)。
Find
テキストが何番目に出現したかを出力します。
Find('テキスト','検索するテキスト',数値)
例:Find(問い合わせの説明, 'エラー', 1)

Find('ログイン時のシステムエラー', 'エラー', 1)の場合、10を出力します(対象のテキスト内において、「エラー」の文字が10番目に出現していることを表します)。
Equals
該当のテキストが条件のテキストと一致する場合、True(真)を出力します。一致しない場合はFalse(偽)を出力します。この関数では、大文字小文字は区別されます。
Equals('テキスト',条件のテキスト')
例: 
Equals(問い合わせの優先度, 'High')

Equals('High', 'high')の場合、False(偽)を出力します(優先度が一致しているかどうかを確認するのに役立ちます)。
EqualsIgnoreCase
該当のテキストが条件のテキストと一致する場合、True(真)を出力します。一致しない場合はFalse(偽)を出力します。この関数では、大文字小文字は区別されません。
EqualsIgnoreCase('テキスト',条件のテキスト')
EqualsIgnoreCase(問い合わせの優先度, 'High')

EqualsIgnoreCase('High', 'high')の場合、True(真)を出力します(大文字小文字にかかわらず、優先度が一致しているかどうかを確認するのに役立ちます)。
IsEmpty
テキストがない場合、True(真)を出力します。ある場合はFalse(偽)を出力します。
IsEmpty(テキスト)
例:
IsEmpty(割り当てられている担当者)

IsEmpty('山田 太郎')の場合、False(偽)を出力します(問い合わせに担当者が割り当てられていることを確認できます)。
Concat
すべてのテキストを連結して出力します。
Concat('テキスト','テキスト',……)
例:
Concat('問い合わせID: ', Tostring(問い合わせID), ' - 優先度: ', 問い合わせの優先度)

Concat('問い合わせID: ', '1234', ' - 優先度: ', '高')の場合、「問い合わせID: 1234 - 優先度: 高」を出力します。
Contains
該当のテキストが検索するテキスト内にある場合、True(真)を出力します。ない場合はFalse(偽)を出力します。
Contains('テキスト','検索するテキスト')
例:
Contains(問い合わせの説明, '返金')

Contains('返金の申請', '返金')の場合、True(真)を出力します(特定のキーワードが使用されているかどうかを確認できます)。
Startswith
該当のテキストが検索するテキストで開始する場合、True(真)を出力します。開始しない場合はFalse(偽)を出力します。
Startswith('テキスト','検索するテキスト')
例:
Startswith(問い合わせのステータス, '保留中')
 
Startswith('保留中のレビュー', '保留中')の場合、True(真)を出力します(保留中の問い合わせを抽出できます)。
Endswith
該当のテキストが検索するテキストで終了する場合、True(真)を出力します。終了しない場合はFalse(偽)を出力します。
Endswith('テキスト','検索するテキスト')
例:
Endswith(問い合わせのステータス, '解決')

Endswith('問い合わせの解決', '解決')の場合、True(真)を出力します(解決済みの問い合わせを抽出できます)。
Lower
該当のテキストのすべての文字を小文字に変換します。
Lower('テキスト')
例:
Lower(顧客のメールアドレス)

Lower('John.Doe@Mail.com')の場合、「john.doe@mail.com」を出力します。
Upper
該当のテキストのすべての文字を大文字に変換します。
Upper('テキスト')
例:
Upper(顧客名)

Upper('john')の場合、「JOHN」を出力します。
Trim
先頭または末尾の空白文字を削除したテキストを出力します。
Trim('テキスト')
例:
Trim(問い合わせの件名)

Trim(' ログインエラー ')の場合、「ログインエラー」を出力します。
Substring
該当のテキストにおいて、入力された位置から入力された長さまでの部分を出力します。
Substring('テキスト',数値1,数値2)
例:
Substring(顧客のメッセージ, 0, 10)

Substring('ログインエラーが表示されました', 0, 10)の場合、「ログインエラーが表示」を出力します。
Replace
該当のテキストにおいて、検索するテキストが出現する各箇所を、指定したテキストに置き換えます。
Replace('テキスト','検索するテキスト','変換するテキスト')
例:
Replace(顧客のメッセージ, 'エラー', '問題')

Replace('システムに関するエラーが発生しました', 'エラー', '問題')の場合、「システムに関する問題が発生しました」を出力します。
Tonumber
該当のテキストを数値の形式に変換します。
Tonumber(引数)
例:
Tonumber(問い合わせの返信時間)
 
Tonumber('48')の場合、「48」を出力します。

留意事項

  • 数式内のテキストは、単一引用符(’)で必ず囲む必要があります。
  • 項目のラベルは、単一引用符(’)で囲む必要はありません。
  • If()、Or()、And()、Not()などの条件付きの関数内で、テキストの値とEquals、EqualsIgnoreCase、Not(EqualsIgnoreCase)などの関数を一緒に使用できます。例:If(Equals(テキスト1, 'abc'), ${出力値1}, ${出力値2})
  • 関数内で数値、テキスト、日時、真偽値のデータの種類を使用できます。
  • 出力値の種類は、選択したデータの種類によって異なります。たとえば、入力値が数値の場合、出力値の種類は数値です。テキストや真偽値にはできません。 

3.真偽値の関数

真偽値の関数では、指定した条件を入力値が満たすかどうか比較し、True(真)/False(偽)または特定の値を出力することができます。 


関数
説明
使用方法
If
指定されている論理条件の値に応じて、2つの値のいずれかを出力します。論理条件を満たす場合、True(真)または特定の値を出力します。条件を満たさない場合、False(偽)または特定の値を出力します。
If(真偽値,汎用,汎用)*
例:
If(問い合わせの優先度 = '高', 'エスカレーション', '通常対応')
 
If('高' = '高', 'エスカレーション', '通常対応')の場合、「エスカレーション」を出力します。
And
すべての式の条件を満たす場合、True(真)を出力します。いずれかの式の条件を満たさない場合、False(偽)を出力します。
And(真偽値,真偽値……)
例:
And(問い合わせの優先度 = '高', SLAの超過 = true)

And('高' = '高', true)の場合、 True(真)を出力します(両方の条件を満たす場合にのみ、True(真)が出力されます)。
Or
いずれかの式の条件を満たす場合、True(真)を出力します。すべての式の条件を満たさない場合、False(偽)を出力します。
Or(真偽値,……)
例:
Or(問い合わせのステータス = '未完了', 問い合わせの優先度 = '重要')

Or('未完了' = '未完了', '重要' = '低')の場合、True(真)を出力します(1件の条件を満たすため)。
Not
指定されている式の論理否定値を出力します。式の条件を満たす場合に、False(偽)を出力します。
Not(真偽値)
例:
Not(問い合わせの完了)
 
Not(false)の場合、True(真)を出力します(問い合わせが完了していなことを表します)。

4.日付/日時の関数

日付/日時の関数では、数式を通じて日付/日時の値を計算できます。問い合わせの経過日数や特定の日時の差分を出力したり、問い合わせの対応期限を計算したりすることが可能です(ただし、日付/日時の項目の値のみを計算可能です)。


関数
説明
使用方法
Newdate
入力した年、月、日、時刻から日付を出力します。
Newdate(年,月,日,時間,分,'テキスト')
例:
Newdate(2023, 01, 18, 09, 30, 'AM')

Newdate(2024,12,21,06,30,'AM')の場合、「21/12/2024 06:30 AM」を出力します。※1
Datepart
日時の式から、日付の値を出力します。
Datepart(日時の引数)
例:
Datepart(問い合わせの作成日)
 
Datepart(Newdate(2024,12,21,06,30,'AM'))の場合、「21/12/2024」を出力します。※1
Timepart
日時の式から、時間の値を出力します。
Timepart(日時の引数)
例:
Timepart(問い合わせの作成日)

Timepart(Newdate(2024,12,21,06,30,'AM'))の場合、「06.30 AM」を出力します。
Adddate
入力した日付に特定の時間を追加した日付を出力します。 

値は、ISO8061の形式「PnYnMnDTnHnMnS」に従って指定する必要があります。「n」の箇所には、期間/時間の値を指定します。たとえば、最初の「n」には、年の値を入力します。「P2Y」は、2年を表します。
「P2Y3M28DT8H30M22S」の場合、2年3か月28日8時間30分22秒を表します。  
Adddate(日時,'テキスト')
例:
Adddate(Newdatetime, 'P2Y')

Adddate(Newdatetime(2024,12,21,06,30,'AM'),'P2Y')の場合、「21/12/2026 06:30 AM」を出力します。
Subdate
入力した日付から特定の時間を引いた日付を出力します。

値は、ISO8061の形式「PnYnMnDTnHnMnS」に従って指定する必要があります。「n」の箇所には、期間/時間の値を指定します。たとえば、最初の「n」には、年の値を入力します。「P2Y」は、2年を表します。「P2Y3M28DT8H30M22S」の場合、2年3か月28日8時間30分22秒を表します。
Subdate(日時,'テキスト')
例:
Subdate(Newdatetime, 'P2Y')

Subdate(Newdatetime(2024,12,21,06,30,'AM'),'P2Y')の場合、「21/12/2022 06:30 AM」を出力します。
Now
現在の日時を出力します。
Now()
例:
Now()

Now()の場合、「19/03/2025 10:52 AM」を出力します。
Datecomp
2つの日付を比較して、日数の差を分単位で出力します。
Datecomp(日時,日時)
例:
Datecomp(問い合わせの作成時間,問い合わせの解決時間)
 
Datecomp(Newdate(2024,05,19,11,30,'AM'), Newdate(2024,05,19,12,30,'AM'))の場合、「660」を出力します。
Dayofmonth
入力した日付の「日」の値を出力します。
Dayofmonth(日時)
例:
Dayofmonth(問い合わせの作成日時)
 
Dayofmonth(Newdate(2024,05,19,11,30,'AM'))の場合、「19」を出力します。
Hour
入力した日付の「時間」の値を出力します。
Hour(日時)
例:
Hour(問い合わせの作成日時)
 
Hour(Newdate(2024,05,19,11,30,'AM'))の場合、「11」を出力します。
Minute
入力した日付の「分」の値を出力します。
Minute(日時)
例:
Minute(問い合わせの作成日時)
 
Minute(Newdate(2024,05,19,11,30,'AM'))の場合、「30」を出力します。
Month
入力した日付の「月」の値を出力します。
Month(日時)
例:
Month(問い合わせの作成日時)
 
Month(Newdate(2024,05,19,11,30,'AM))の場合、「5」を出力します。
Year
入力した日付の「年」の値を出力します。
Year(日時)
例:
Year(問い合わせの作成日時)
 
Year(Newdate(2024,05,19,11,30,'AM'))の場合、「2024」を出力します。
Weekday
入力した日付に対応する曜日の数字を出力します(1:日曜日、2:月曜日、……、7:土曜日)。
Weekday(日時)
例:
Weekday(問い合わせの作成日時)
 
Weekday(Newdate(2025,03,25,11,30,'AM'))の場合、「3」を出力します(2025年3月25日は火曜日のため)。

メモ

  • 入力する日時の引数の形式は、必ず「YYYY,MM,DD,HH,MM,AM/PM」にする必要があります。ただし、出力値は選択した国の表示設定に基づきます。
  • テキストのデータの種類(YEAR/DAY/MONTH/HOUR/MINUTE)は、大文字にする必要があります。
  • Datecomp関数の出力値は、常に分単位で出力されます。
  • 日時の値が「0」の場合、「null」が出力されます。

数式の構文の参考情報  

1.数値の関数  


2.テキスト(文字列)の関数


3.日時の関数


4.真偽値の関数



以下では、数式項目の利用例について説明します。


利用例1:地域別の配送料の計算

商品の単価、配送手数料、GST(付加価値税)をもとに、商品の配送にかかる費用の合計を計算します。


数式の出力値の種類:通貨


数式:(商品の単価 + 配送手数料) + ((商品の単価 + 配送手数料) * (GST / 100))




利用例2:従業員の勤続年数の計算


組織への入社日をもとに、従業員の合計勤続年数を計算します。

数式の出力値の種類:小数

数式: Year(Now())-Year(${入社日})



利用例3:納品待ちの原材料の計算

 

注文した原材料の数量と納品された原材料の数量をもとに、納品待ちの原材料の数量を計算します。

 

数式の出力値の種類:小数

 

数式:(原材料の注文の合計) - (納品された数量)




数式項目の追加 

数式項目は、レイアウトを作成/編集する際に対象のレイアウトに追加できます。追加するには、対象の部門を選択し、データのレイアウトのページに移動します。


留意事項


  • 複数の項目を選択する場合、出力値のデータの種類は、選択したいずれかの項目のデータの種類にする必要があります。たとえば、数式内にテキストと数値の項目が含まれている場合、出力値のデータの種類には数値またはテキストのいずれかを選択する必要があります。
  • 数式項目の出力値に応じて、利用中のプランにおける各種項目の上限がカウントされます。たとえば、数式項目が10件あり、アカウント内でテキスト項目の件数が上限の100件に達している場合、テキストの値を出力する数式項目をこれ以上作成することはできません。
  • 部門内で作成した数式項目は、複数のレイアウトで使用できます。この数式項目は、レイアウトの使用していない項目の欄に表示されます。
  • 数式項目の編集画面に数式を入力するにあたって、入力可能な文字数の上限は1,500文字です(関数や演算子を含む)。
  • ユーザーは、数式項目の値を編集できません。数式項目の値は、関連する項目やデータが更新された際に自動で更新されます。数式は作成時と同じ手順で編集できますが、出力値の種類を変更することはできません。
  • 数式項目はテーブル表示、カスタム表示、レポートで使用できますが、自動化処理では使用できません。

数式項目を追加するには


  1. 画面右上にある設定(歯車)アイコンをクリックし、[カスタマイズ]の欄にある[レイアウトと項目]をクリックします。
  2. 対象のレイアウトと部門を選択します。



  3. レイアウトの作成/編集ページを開きます
  4. 画面右側の項目の追加欄で、数式項目を対象のセクションにドラッグ&ドロップします。
    項目の追加画面が表示されます。



  5. 項目の追加画面で、以下の操作を実行します。
    • 数式項目のラベル名を入力します。
    • 数式の出力値の種類を選択します。
    • 数式の入力欄で、対象の数式を入力します。
    • 使用可能な数式や演算子を選択して数式内に挿入することもできます。
    • 数式が適切に機能するかどうかを確認するには、構文の確認ボタンをクリックします。
    • ツールチップの表示の切り替えボタンを有効にすると、項目のデータの入力手順を表示できます。
    • [ユーザーに表示する]のチェックボックスにチェックを入れると、ユーザーに対して項目の値を表示できます。
  6. [保存する]をクリックします。
  7. レイアウトの編集画面で[保存して終了する]をクリックします。



数式項目へのアクセス 

Web
Android
Web

数式項目へは、データの詳細ページからアクセスできます。
ただし、数式項目はデータの作成/編集フォームには表示されません。数式の計算は、データが作成された後にのみ行われます。たとえば、新しい問い合わせが追加されると、問い合わせの詳細ページに数式項目とその出力値が表示されます。また、問い合わせの詳細ページで項目の値が更新されると、数式項目の再計算が行われ、出力値が更新されます。


数式項目にアクセスするには


  1. 対象のタブとレイアウトに移動します。
  2. 新しいデータを追加します。
  3. 対象のデータの詳細ページを開きます。
  4. 数式項目とその出力値が表示されます。

Android
モバイルアプリでは、数式項目を表示することのみがができます。Webアプリ(ブラウザー版)で数式項目が作成した場合、作成した数式項目をモバイルアプリから表示するには、モバイルアプリでポータルのメタデータを更新する必要があります。
モバイルアプリでポータルのメタデータを更新するには、Zoho Deskのモバイルアプリを開き、  (メニュー)アイコン→ (設定)アイコンの順にタップし、[ポータルのメタデータを更新する]を選択します。

数式項目の出力値(小数、真偽値、通貨、文字列、日付、日時)は、以下の詳細ページに表示されます。 
  1. 問い合わせ 
  2. 活動(予定とタスク)、
  3. 連絡先 
  4. 取引先 
連絡先の作成/編集画面には表示されません。



数式項目の削除 

必要に応じて数式項目を削除し、使用していない項目の欄に移動できます。使用していない項目の欄から、該当の数式項目を完全に削除することが可能です。


数式項目を削除するには


  1. 対象の数式項目を追加したレイアウトを開きます。
  2. 対象の数式項目の隣に表示される設定アイコンをクリックします。
  3. [項目を削除する]を選択します。
    使用していない項目の欄に移動し、対象の数式項目を完全に削除します。



    Zoho CRM 管理者向けトレーニング

    「導入したばかりで基本操作や設定に不安がある」、「短期間で集中的に運用開始できる状態にしたい」、「運用を開始しているが再度学び直したい」 といった課題を抱えられているユーザーさまに向けた少人数制のオンライントレーニングです。

    日々の営業活動を効率的に管理し、導入効果を高めるための方法を学びましょう。

    Zoho CRM Training



            Zoho Campaigns Resources

              Zoho WorkDrive Resources




                • Desk Community Learning Series


                • Digest


                • Functions


                • Meetups


                • Kbase


                • Resources


                • Glossary


                • Desk Marketplace


                • MVP Corner


                • Word of the Day


                • Ask the Experts









                                Resources

                                Videos

                                Watch comprehensive videos on features and other important topics that will help you master Zoho CRM.



                                eBooks

                                Download free eBooks and access a range of topics to get deeper insight on successfully using Zoho CRM.



                                Webinars

                                Sign up for our webinars and learn the Zoho CRM basics, from customization to sales force automation and more.



                                CRM Tips

                                Make the most of Zoho CRM with these useful tips.