Excelでのデータ計算でよく使用される「IF関数」ですが、kintoneでも利用できるようになりました。それにより条件分岐を作ることができ、kintoneの標準機能で様々な計算が実現します。
本記事では、kintoneのIF関数を使った活用例や設定方法をご紹介します。今までのkintoneの計算がより正確で便利になりますので、ぜひご参考ください。
関連記事をご用意しております。
▼kintoneの計算式の設定|使い方・関数一覧・利用シーンを紹介
▼kintoneのアプリ開発|方法や外注のメリット、ポイントも紹介!
▼kintoneをさらに便利に! 自社で開発するメリット・デメリットについて解説
IF関数とは
普段Excelを使用されている方にはなじみがあると思いますが、IF関数について改めて説明します。
IF関数とは、ある論理式をあらかじめ設定し、論理式に対して”真”か“偽”か、という判定を行う関数のことをいいます。
真は条件に合致した場合、偽は条件に合致しない場合、という意味です。「ある条件が成立するときは○○を行う、成立しないときは××をする」というような、指定した条件に合うか合わないかで処理(計算)の変更を設定できるのです。
特定の条件を満たすかどうかを瞬時かつ正確に判定し、論理式通りの計算を行うため、計算の正確性や手作業で行っていた計算作業の時間短縮につながります。
kintoneでは、2020年1月のアップデートによりIF関数が利用できるようになり、その他AND/OR/NOT関数も追加されました。
IF関数の基本的な形
IF関数の基本構造として、次のようなイメージで覚えておきましょう。
IF(条件式,条件成立時の計算式,成立しないときの計算式)
IF関数のかっこの中には、3つの要素が入ります。
1つ目は「条件式」で、ある条件が成立する「”真(=true)”か“偽(=false)”か」を判定するものです。左から2つ目は条件が成立(true)するときの処理内容、3つ目は条件が不成立(false)のときの処理内容、となります。
kintoneではIF関数を使い、数値の比較に加え、文字列・日付・時刻・ラジオボタン・ドロップダウンのフィールドを併せて使うことが可能です。
kintoneの条件式で使える演算子について
kintoneの条件式で使用できる演算子とフィールドの種類について、説明します。
文字列(1行)フィールドについては、等しいかどうかという比較はできますが、大・小の比較ができるのは数値のみです。例えば、「1時と2時、どちらが大きい?」という比較は行えません。
演算子 | 意味 | 数値 | 計算フィールド | 文字列(1行フィールド) |
= | 等しい | ○ | ○ | ○ |
!= | 等しくない | ○ | ○ | ○ |
<> | 等しくない | ○ | ○ | ○ |
< | 右辺が左辺より大きい | ○ | ○ | × |
<= | 右辺が左辺以上 | ○ | ○ | × |
> | 右辺が左辺より小さい | ○ | ○ | × |
>= | 右辺が左辺以下 | ○ | ○ | × |
条件式に使用できるパターン
条件式に使用できるパターンについて、以下4つを説明します。
- 文字列が一致しているか
- 数値が定めた値より大きい(小さい)か
- 時刻フィールドの値を判定
- ラジオボタンやドロップダウンの値を使用
文字列が一致しているか
先述の通り、文字列の場合は「等しいかどうか」でしか判定できません。
例:文字列フィールド=”こんにちは”
上記の例のように、文字列フィールドの値が「こんにちは」に完全一致する場合だけ、条件式は成立します。文字列を計算式の中に書く際は、””(ダブルクォーテーション)で囲んで書きます。
数値が定めた値より大きい(小さい)か
数値の比較では=(イコール)の他に、大・小を比較する演算子を使用します。
例:数値>=80
IF(点数>=80,”合格”,”やり直し”)
上記は、テストの点数を記入する数値フィールドに対し、合格点80点以上を満たしている場合は「合格」、80点を満たない場合は「やり直し」と表示させる、という式です。
時刻フィールドの値を判定
時刻フィールドからも値を判定して、IF関数を使えます。
例えば、午前中か午後かを表示させるとします。
日付や時刻を表示させるDATE_FORMAT関数では、フィールドの値の計算式の中で使う場合は、その値は「UNIX時刻」という値として使われます。DATE_FORMAT関数の詳細はこちらをご確認ください。
例:12:00==>43200
IF(時刻<43200,”午前中”,”午後”)
12:00はUNIX時刻でいうと「43200」と表します。上記は、43200と比較し、時刻がそれより小さければ「午前中」、それ以外であれば「午後」という文字を表示させる計算式です。
ラジオボタンやドロップダウンの値を使用
条件式にはラジオボタンやドロップダウンの値も使用できます。
例えば、リンゴ/バナナ/ブドウの3つの選択肢があるラジオボタンの値によって、文字列に表示させる値を変えるとします。
IF(ラジオボタン=”リンゴ”,”赤”,””)
この計算式では、ラジオボタンの値がリンゴの時、「赤」を表示できます。
それでは、あと2つの選択肢について、どのように表示させるのでしょうか。
このような場合には、IF関数を複数重ねて表示させます。
IF(ラジオボタン=”リンゴ”,”赤”,IF(ラジオボタン=”バナナ”,”黄”,”紫”))
この式では、1つ目のIF関数の「成立しない時の計算式」の中に、さらにもう1つのIF関数を入れている、という構造です。
必要に応じてIF関数を複数使用することで、複雑な条件式を設定できます。
IF関数の活用例と設定方法
ここからIF関数の実用的な活用例と、その設定方法について紹介します。簡単にできそうなものから、ぜひ実際にkintoneで試してみてください。
①選択に応じた計算ができる
前章で説明したラジオボタンを使って、IF関数で算出させる方法があります。
例えば、交通費申請でよくある片道・往復の料金を算出させるとしましょう。片道の料金を入力し、ラジオボタンで往復を選択すれば、自動的に金額を2倍に計算した往復料金を表示できます。
- アプリ設定画面の「フォーム」タブから、計算フィールドを設定
- フィールドの[設定]ボタンをクリックから設定画面を開き、計算式を入力
ラジオボタン「往復」では金額を2倍、それ以外は金額を総計算の項目に反映する計算式を設定します。
IF(片道_往復=”片道”,金額,金額*2)
- [保存]ボタンをクリックし、完了
- 交通費申請アプリから実際に数値を入力し確認
片道のラジオボタンを選択すると、金額の値がそのまま総合計に反映されます。
往復を選択すると、金額の2倍の数値が総合計に反映されます。
②CONTAINS関数を組み合わせてチェックボックス条件を制御
IF関数による値の変更で表示が変わるように、チェックボックスや複数選択も同様に、選択した値によって表示や計算方法が変更できると、さらに便利な使い方となります。
そんなときは、CONTAINS関数を組み合わせることがおすすめです。
CONTAINS関数の基本的な構造は以下の通りです。
CONTAINS(フィールドコード, 選択肢名)
チェックボックスの項目を設定し、計算式でIF関数とCONTAINS関数を組み合わせ、チェックボックス条件の制御を行います。
ここでは、チェックボックスの選択によって、割引される金額を算出する手順について説明します。
- アプリ設定画面の「フォーム」タブから、「チェックボックス」フィールドを設定
- チェックボックスの設定画面を開き、項目「割引1」「割引2」を設定
- フィールドの計算式を変更
チェックボックス「割引1」では金額を10%引き、選択していない場合は金額をそのまま総計算の項目に反映する計算式を設定します。
IF(CONTAINS(割引,”割引1”),金額*0.9,金額)
- [保存]ボタンをクリック
- アプリの金額入力画面から、割引金額が反映されているか確認
「割引1」を選択していない場合、「割引2」の選択状況に関わらず、金額の値が総計算にそのまま表示されます。
「割引1」を選択している場合、「割引2」の選択状況に関わらず、金額の10%引きの値が総計算に表示されます。
条件分岐の使用例
それでは、条件分岐によるIF関数の使用例について紹介します。簡単なテストを例に、条件分岐の方法を解説します。
- アプリの設定から、問題文と回答欄、表示欄を作成
問題文は「ラベル」、答えと結果は「文字列(1行)」のフィールドを設定します。
- ラベルの設定画面を開き、テキストボックスに問題文を入力
- 文字列(1行)の設定画面を開き、問題の答えを記入するフィールドを設定
フィールドとフィールドコードは、同一に設定しておくとわかりやすいです。 - 入力された答えが正しいかどうかの結果を表示するフィールドを設定
まず、「自動計算する」にチェックを入れます。すると、その下にテキストボックスが表示されます。
次に「計算式を表示しない」にチェックを入れます。計算式を表示させると、答えが画面上に表示され、わかってしまうためご注意ください。
- チェックボックス「自動計算する」の下に表示されているテキストボックスに、IF関数を入力
今回の質問に対するIF関数は以下の通りとなります。
IF(答え=”2019年”,”正解”,”不正解”)
- [保存]ボタンをクリックし、IF関数が機能しているか確認
もし、うまく動作しない場合は、以下のことを確認してみてください。
- フィールドコードが間違っていないか
- 計算式に誤字・脱字はないか
- 計算式で参照できるフィールドか
複雑な計算式が入っているExcelデータをkintoneにそのまま取り込める「Smart at tools」
ここまで、kintoneでのIF関数設定方法をご紹介しましたが、すでにExcelに複雑な計算式を入れていて、それをそのままkintoneに取り込みたいというケースもあるでしょう。
そんなときは、エムソリューションズ社が提供するプラグイン「Smart at tools」がおすすめです。
Smart at toolsは、Excelのシートを丸ごとkintoneに取り込めるため、Excelのフォーマットを引き続き利用できます。Excel→kintoneへのデータ移行が簡単に行えるのです。複数シートにまたがるExcelデータも問題なく取り込み可能なため、Smart at toolsは「脱Excel」を目指すお客様によく利用されています。
また、BI(ビジネスインテリジェンス)ツールとの連携も可能で、データ分析や視認性の高いグラフでデータの可視化だけでなく、外部データベースと連携することで複数のアプリを結合させた分析も実現します。
その他、CSV入出力やユーザー・組織管理などにも役立つ機能を備えています。詳しくはこちらをご参考ください。
kintoneプラグイン/Smart at tools
kintoneの計算をIF関数で楽に
kintoneは様々な業務システムを備えており、多くの組織で業務改善を目的に導入されています。
情報管理の目的だけでなく、近年はデータ分析ツールとしても活用されており、そこでIF関数での自動で正確な計算は役立てられるでしょう。
本記事でご紹介した内容は初歩的なIF関数の設定方法となりますが、お役に立てれば幸いです。
「もっと複雑な計算式を設定してデータ分析に反映させたい」「社内にIF関数の設定までできる人材がいない」などお困りごとがありましたら、お気軽にテクバンまでご相談ください。
※本記事の内容は2023年10月時点のものです。kintoneの仕様や利用環境は変更する場合があります。
開発支援承ります
テクバンではkintoneの開発支援を受け付けております。日々の運用でお困りの方は以下より弊社サービスをご覧ください。
また、kintoneの標準機能に加えて、拡張機能であるプラグインを利用することで kintoneの活用の幅がより広がります。プラグイン選定から導入までサポートいたします。
kintone開発支援サービス
kintoneプラグイン