【Salesforce】数式でのIF関数の使用例(入れ子や複数条件など)

Salesforce
この記事は約3分で読めます。

IF関数は、Salesforceの数式の中でよく使われる関数ではないでしょうか?

この記事では、Salesforceの数式でのIF関数の使用例を紹介します。

スポンサーリンク

IF関数とは

式が真か偽かを判断します。真の場合は与えられた値を返し、偽の場合は別の値を返します。

IF(logical_test, value_if_true, value_if_false)
スポンサーリンク

通常の使い方

IF(CheckBox__c, "〇", "×")

この使用例は、CheckBox__cの値を判定して、真の場合は”〇”を返し、偽の場合は”×”を返します。

チェックボックスの値を〇か×のテキストに変換するような場面で使えます。

スポンサーリンク

あまりよくない使い方

IF(CheckBox__c, false, true)

このIFを使って戻り値が真/偽を返すことは初心者がやりがちなことです。

以下のようにするとシンプルにできます。

!CheckBox__c
スポンサーリンク

IF関数を入れ子にして複数使う

IF(CheckBox__c, "〇", IF(CheckBox2__c , "△" , "×") )

CheckBox__cの値を判定して、真の場合は”〇”を返し、偽の場合はCheckBox2__cの値を判定して”△”か”×”を返します。

改行や半角スペースを使って読みやすいように工夫すると後になって助かることが多いです。

IF関数を複数使っていく場合は、真・偽のどちらか片方に寄せた方がコードとしては読みやすいです。真も偽も両方にIF関数を書いていくと途中で何を書いているか分からなくなり収拾が付かなくなりやすいです。

IF(CheckBox__c , "◎"
  , IF(CheckBox2__c , "〇" 
      , IF(CheckBox3__c , "△" , "×")
    )
)
スポンサーリンク

IF関数の条件にAND関数を使う

IF(AND(Payment_Due_Date__c < TODAY(),​​Payment_Status__c ="未払い") , "支払い遅延", ​null)

AND関数を使うことで複数条件の判定が出来ます。

支払期日が過ぎ、支払状況が「未払い」かどうかが判断されます。該当する場合は、「支払い遅延」というテキストを返し、該当しない場合は、項目を空白のままにします。

スポンサーリンク

IF関数の条件にOR関数を使う

IF( OR( CheckBox__c , CheckBox2__c ), "〇", "×")

CheckBox__c か CheckBox2__c のどちらかが正の場合は”〇”を返し、どちらも偽の場合は”×”を返す。

スポンサーリンク

選択リストの値を判定する

ログインしたユーザが引用符内に指定したライセンスを持っているかどうかを判別するには、次の数式を使います。

IF(ISPICKVAL($Profile.UserType ,"Standard"), 100, 0.1)
スポンサーリンク

複数選択リストの値を判定する

IF(INCLUDES(Hobbies__c, "ゴルフ"), "ゴルフ好き" , null)

複数選択リストのカスタム項目「趣味」にゴルフが選択されていた場合に”ゴルフ好き”とテキストを返し、該当しない場合は、項目を空白のままにします。

スポンサーリンク

まとめ

IF関数の使用例はいかがでしょうか。

ExcelにもIF関数があり、使い方は同じなので慣れている人は問題になることは少ないと思いますが、扱ったことがない人は慣れるまで難しいかもしれません。

よく使う関数なので覚えると他のアプリなどでも応用が効きます。

スポンサーリンク

参考

Help And Training Community
この記事を書いた人
サイト運営者
Ryu
Ryu

フリーランスエンジニア。転職含め9社経験。第二新卒から未経験でIT就職。社内SEとSIerのSEで働き、企画〜運用保守、フロント〜バック・インフラとフルスタックな守備範囲。C#とSQLとSalesforceが得意。

Ryuをフォローする
Salesforce
スポンサーリンク