論理式を評価し、真の場合は 1 つの値を返し、偽の場合はもう 1 つの値を返します。
構文
IF(logical_expression, value_if_true, [value_if_false])
- 論理式—評価対象の論理式。真または偽で表されます。
- 値が真の場合—論理式が真であった場合、返される値または数式。
- 値が偽の場合—[任意]論理式が偽であった場合、返される値または数式。省略された場合、空白の値が返されます。
使用例
IF([期日]1 > [期日]2, "日付 1 が遅い", "日付 2 が遅い")
利用上の注意
- IF 関数をネストして、複数の論理評価を行うことができます。
- Smartsheet は数式内の IF ステートメントを左から右に読み、最初の式に基づいて値を表示し、それを真と評価します。IF関数をネストする場合、オプションのreturn_if_falseは、すべての論理式がfalseと評価された場合にのみ返される。
例
この例では以下のシートの情報を参照しています。
| 行番号 | アイテム番号 | ステータス(記号列タイプ) | 発注日 | 在庫はありますか? |
|---|---|---|---|---|
| 1 | C001 | 緑 | 24/12/15 | 真 |
| 2 | C002 | 赤 | 12/12/24 | 偽 |
| 3 | C003 | 黄 | 12/15/25 | 真 |
| 4 | C004 | 緑 | 12/20/24 | 真 |
上記の表を例に、シートに IF() 関数を使用した例をいくつかご紹介します。
| 数式 | 説明 | 結果 |
|---|---|---|
| =IF([ステータス]1 = "赤", "リスクあり", "予定通り") | 「ステータス」列の行 1 が「赤」の場合は「リスクあり」という値を返し、そうでなければ「予定通り」という値を返します。 | 予定通り |
| =IF([発注日]2 TODAY(), "赤", IF([発注日]2 > TODAY(), "黄", IF([発注日]2 = TODAY(), "緑"))) | 「発注日」列の行 2 が TODAY より前の場合は、「赤」という値を返します。 「発注日」列の行 2 が TODAY より後の場合は、「黄」という値を返します。 「発注日」列の行 2 が TODAY と一致する場合は、「緑」という値を返します。 | 赤 |
| =IF([発注日]3 TODAY(), "赤", IF(AND([発注日]3 >= TODAY(), [発注日]3 TODAY(+7)), "黄", "緑")) | 「発注日」列の行 3 が TODAY より前の場合は、「赤」という値を返します。 「発注日」列の行 2 が、TODAY より後か一致し、かつ今後 7 日以内の場合は、「黄」という値を返します。 いずれでもない場合は、「緑」という値を返します。 | 緑 |
| =IF(COUNTIF([アイテム番号]:[アイテム番号], [アイテム番号]@row) > 1, 1, 0) | チェックボックス列型の重複を検索する: 「アイテム番号」列に現在の行のアイテム番号のインスタンスが複数ある場合は、この行のチェックボックスをオンにします。 重複がない場合は、このチェックボックスをオンにしないでください。 | すべてのチェックボックスがオフの状態 |
さらにサポートが必要な場合
数式ハンドブック] テンプレートを使用すると、より多くのサポート リソースを検索したり、リアルタイムで操作を練習できる各関数の用語集や、よく使用される数式や高度な数式の例を含む 100 以上の数式を表示したりできます。
他の Smartsheet ユーザーがこの関数をどのように使用しているかの例を検索したり、特定の使用例について Smartsheet オンライン コミュニティで質問したりできます。