Read Article

【kintoneで条件分岐の計算をしたい方必見!】IF、IFS、SUMIF、COUNTIF関数を使ってみた

【kintoneで条件分岐の計算をしたい方必見!】IF、IFS、SUMIF、COUNTIF関数を使ってみた

 

はじめまして、吉村と申します!
以前は営業部に所属していましたが、今年の3月よりカスタマーサポート部の所属となりました!

これまで、kintone活用セミナーに登壇させていただいたり、お問い合わせ対応で皆さんと関わる機会がありましたが、
これからはブログでもお世話になります!

趣味は食べること、特技も食べることです。
よろしくお願いします。

早速ですが、本題に入らせていただきます!

この記事を読んでできること
 kintoneではできないIF関数を使った計算
・ドロップダウンの選択肢だって変えられちゃいます
 契約金額によって顧客ランクをつける
・IFS関数とSUMIF関数の合わせ技!
 契約数を算出
・COUNTIF関数で簡単に算出しましょう!

IF関数とは?


普段からExcelを使われている方は、

「そんなの知ってるよ〜」と思われるかもしれません。

はい、そんなあなたは次へ進んじゃってください!

実は私、学校の授業以外でExcelを使ってこなかった初心者なので、
最近までIF関数について全く知りませんでした。。。

IF関数とは、設定した条件に従って、値を変化させる関数 のことで、
もし、○○なら△△する。○○でなければ、□□する。ということが可能です。

   ○○    △△      □□
IF( 条件式 , 条件成立時の値 , 条件不成立時の値 )

ㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤ

例えば、テストの点数が60点以上であれば合格、そうでなければ不合格としたい場合は、

IF( 点数>=60 , “合格” , “不合格”

となります。

大体伝わりましたでしょうか?
IF関数についてはこんな感じで本題に入っていきましょ〜!
 

kintoneのIF関数でできること


と言っても、今年1月にアップデートされた内容なので、
既にご存知の方がいらっしゃったらごめんなさい!!

簡単にアプリを作ってみました!
商品合計が10,000円以上の場合、送料無料(商品合計が10,000円未満であれば、送料が500円かかる)というルールです。

以下のレコードでは、
商品合計が10,000円未満のため、送料が500円かかります。ㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤ

 
このように、kintoneの標準機能のIF関数でも、
“同一レコード内”での条件分岐なら、とても便利に使えます!

 

データコレクトを使ってkintoneで使える関数を増やそう!


kintoneの標準機能のIF関数では、同一レコード内にあるデータしか条件式に使うことが出来ないので、
残念ながらアプリ内の全レコードの”合計値”や”平均値”と比較することはできません。
また、ドロップダウンの選択肢を変えたりすることもできません。ㅤ

そんなことわかってるよって思いましたよね?

そんな方に朗報です!!!
データコレクトを使えばあなたの悩みが全て解決するはずです!!!

データコレクトとは、Excelライクにkintoneの複数アプリ間で情報の収集・計算・加工ができるサービスです。
kintoneの標準の関数では出来なくても、データコレクトを使えばできる計算について見ていきましょう!

 【IFS関数】複数の条件で分岐ができる


手始めに、選択したコースによって料金が自動で入力されるよう設定してみます!
さあ、行きます!

フィールド式をIFS関数を使って設定します。

IFS関数とは、複数の論理式を検証し、最初に条件を満たした値を返す関数のことで、

論理式1の時はTRUE値1を返し、論理式2の時はTRUE値2を返すことが可能です。

IFS( 論理式1 , TRUE値1 , [ 論理式2 , TRUE値2 , … ] )

※IFS関数の詳細については、こちらをご覧ください。


今回は、利用コースでライトを選択すれば10000、スタンダードを選択すれば25000、プレミアムを選択すれば50000が、
自動で入力されるように設定します。

式はこんな感じです。

IFS( 利用コース = “ライト” , “10000” , 利用コース = “スタンダード” , “25000” , 利用コース = “プレミアム” , “50000” )
 

設定方法


それでは設定方法について、説明させていただきます。
まずはデータコレクトにログインです。

① 画面右上の+ボタンをクリックします

 
②「契約管理アプリ」を追加します
 
アプリの名称、kintoneアプリのURL、APIトークンを入力します。
(APIトークンの生成に関しては、こちらをご覧ください。)
また、APIトークンの生成後はkintoneアプリにてアプリの更新を行っていただく必要があります。
 
全て入力が終わったら「追加」ボタンをクリックします。
 
③「JavaScriptダウンロード」から、JavaScriptファイルをダウンロードします
 
 
 
④ ③でダウンロードしたJavaScriptファイルを登録したアプリ全てに適用
 
JavaScriptファイルをアップロードして、kintoneで「在庫管理アプリ」に追加した後、
「保存」してアプリの設定画面に戻り、「アプリを更新」します。
 

ここからフィールド式の設定に入ります。

⑤ ②で、データコレクトに追加した「契約管理アプリ」の設定を開きます

フィールド式の右側青色の編集ボタンをクリックします。

ㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤㅤ

⑥ IFS関数を使ってフィールド式を設定します

 
さっきのフィールド式を設定します。
(フィールド式設定後に「保存」ボタンをクリックしていただくことをお忘れなく〜)
 
 
ではkintoneアプリを見てみましょう。
「DataCollectする」ボタンをクリックすると……
 
値が自動で入力されました〜〜〜!
 
でも今、”「Datacollectする」ボタンをクリックするの面倒だな〜 “と思われた方、いらっしゃいますよね?
ご安心ください。

時間指定更新」で、指定した時間に設定することによって、
定期的に自動でステータス変更を行うことが可能ですし、
自動更新(Webhook連携)」で、
入力元データアプリのレコード追加/変更/ステータス変更/削除をきっかけに自動で更新することができます。
 
なので勝手にステータス変えてくれ〜〜〜!と思われている方や、
更新を忘れそうだな。。。という方には、「時間指定更新」「自動更新(Webhook連携)」をおすすめします!

   契約金額によって顧客ランクをつけたい!
【SUMIF関数】条件に合致したものだけを合計する


こういうことがしたかった!という方いらっしゃいますよね?
データコレクトを使えば実現できます!!!

上でも出てきた「契約管理アプリ」ですが、
お客様から申し込みがあった場合に、このアプリにデータを追加していきます。
1社につき1レコードではなく、契約いただく度に契約数分レコード追加します。
 
そしてこちらは「顧客管理アプリ」です。
こちらでは、お客様の情報を1社につき1レコードで管理しています。
なので1つの会社で5契約あっても、レコードは1つだけです。
 
ごめんなさい、「契約管理アプリ」も「顧客管理アプリ」もパッと見同じですね(笑)
 
 
今回は、「顧客管理アプリ」で「顧客ランク」を付けられるようにしたいので、
「顧客ランク」フィールドを設けています。
 
また、今回、合計利用料金に応じて顧客ランクが決まるので、
「合計利用料金」フィールドも設けています。
 
この「顧客管理アプリ」内にある「顧客ランク」が、
「契約管理アプリ」の「利用料金」の合計数(合計利用料金)に応じて自動で変わるイメージです!
 

設定方法


先ほど紹介した手順で、

「顧客管理アプリ」もデータコレクトに追加してください。

「顧客管理アプリ」にフィールド式を設定します。

まずは、「合計利用料金」のフィールド式を、SUMIF関数を使って設定します。

SUMIF関数とは、条件に一致する数値の合計を返す関数のことで、
△△の中の□□の数値の合計を返すことが可能です。

     △△   □□
SUMIF( 範囲 , 検索条件 , [合計範囲]


例えば、アプリAに登録されている商品の中で商品Aの売上の合計を取得する場合は、

SUMIF( アプリA!商品 , “商品A” , アプリA!売上

となります。(SUMIF関数の詳細については、こちらをご覧ください。)

今回は、「契約管理アプリ」に登録されているレコードのうち、同じ会社名レコードの合計利用料金に応じて、
「顧客ランク」を決めたいので、入力元データとして「契約管理アプリ」を選択します。
 
 
続いて、「契約管理アプリ」の「お客様名」と「顧客管理アプリ」の「お客様名」が一致した時の、
「利用料金」の合計を算出したいので、「お客様名」と
「利用料金」をそれぞれ選択し、コピーします。

SUMIF関数を使ってフィールド式を設定します。

「契約管理アプリ」と「顧客管理アプリ」のお客様名が一致した時の、
契約管理アプリの利用料金の合計を取得したいので、以下のような式になります。

更新後の値が入っていますね!
ちゃんと計算できたみたいです!

続いて、「合計利用料金」によって、「顧客ランク」をつけていきます。
再びIFS関数を使って設定します。

「顧客ランク」の値を出す際、
先ほど設定した「顧客管理アプリ」の「合計利用料金」の値が必要になります。
 
合計利用料金が40,000円より大きければA、25,000円より大きければB、25,000円未満であればCという式を設定します。

合計利用料金が「50000」ということは…?
「顧客ランク」が何になるかは予想できますね!

フィールド式は以下のようになります。


もう「顧客ランク」が何になるか見えちゃってますね(笑)
でもとりあえずkintoneアプリ側でデータコレクトしてみましょう!

 
「DataCollectする」ボタンをクリックすると……

……

でました〜〜〜!予想通りAですね!

ちなみにこの「顧客ランク」、ドロップダウンの選択肢を変えてるんです。
お気づきの方いらっしゃいましたか?

実はドロップダウンの選択肢を計算によって変えることはkintoneではできないんですよね。
というかそもそもkintoneでは、計算フィールドまたは文字列(1行)フィールドでしか、計算ができません。

ぜひここも、データコレクトで試していただきたいポイントです!

 

   契約数を算出したい!
【COUNTIF関数】条件に合致したレコードの件数を数える


最後に、契約数も算出しておきますね!
これは、COUNTIF関数を使って設定します!

COUNTIF関数では、条件に一致する数値や日付、文字列の個数を返すことができます。
△△の中の□□の個数を返すことができます。)

       △△   □□
COUNTIF( 範囲 , 検索条件

例えば、アプリAに登録されている商品の中の商品Aの個数を取得したい場合は、

COUNTIF( アプリA!商品 , “商品A”

となります。(COUNTIF関数の詳細については、こちらをご覧ください。)

設定方法

 

さて、COUNTIF関数を使ったフィールド式の設定に入ります。
「契約管理アプリ」には、新しく契約いただく度にレコードを追加していく運用なので、
「お客様名」の数を算出すると、「契約数」を求められることになります。

以下のようなフィールド式になります。


更新後の欄に数値が入っているので、ちゃんと計算できてるみたいですね!
kintoneアプリでも確認してみましょう。

念の為、「契約管理アプリ」にて、
お客様名「田中マーケティングテクノロジー」で絞り込んでみます。(↓)
結果は2件ですね(↓)


「顧客管理アプリ」のレコード詳細画面にて「DataCollectする」ボタンをクリックすると…


ちゃんと値が入ってますね〜〜〜!(一安心)
完璧です。

30日間、無料でトライアル可能です!

 

ということで今回は、
「選択したコースに応じた利用料金」「合計利用料金」「合計利用料金に応じた顧客ランク」「契約数」の4つを算出してみました!
かなり内容が盛り沢山になりましたが、いかがでしたか?

データコレクトを使うとこんな感じで、kintoneではできない条件分岐の計算なんかができちゃいます!
試してみたくなりましたよね…?

私だけがこの感動を味わっているのはもったいないので、
ぜひこの機会に無料トライアルで実際にお試しいただきたいです。。。
無料トライアルは一度限りでなく何度でもお申し込みいただけます!

最後までご覧いただきありがとうございました〜〜〜!

 

☆関連記事:データコレクトで在庫引当も可能です!詳細はこちらkintoneで在庫引当

この記事を書いた人

吉村
吉村
トヨクモ歴2年目です。
みなさまに有益な情報をお届けできるよう頑張ります。
URL :
TRACKBACK URL :

LEAVE A REPLY

*
*
* (公開されません)

Return Top