kintoneの項目同士の計算に行き詰まっていませんか?
kintoneでは項目同士の計算を行うことができます。数値を集計したり、文字同士をくっつけたりすることができます。
しかしながら、その設定画面では、「計算式」を書かなくてはいけません。
この計算式の書き方に悩まされることも多いのではないでしょうか?
今回は、計算に利用するフィールドの使い分けの注意点や計算式の書き方のポイントを紹介しようと思います。
はじめに
kintoneの計算についてはcybozu様でもまとめていますので、以下のリンクから確認してみてください。
計算に利用するフィールドの概要
ここでは、概要としてまとめます。
計算式の書き方
計算には「フィールドコード」を利用します。
「フィールドコード」とは編集画面でフィールドの設定を開いたときの一番下の項目です。
フィールドコードの注意点
フィールドコードとフィールドタイトルを間違いがちです。
フィールドコードの命名のルールを決めるなどして注意しましょう。
(フィールドコードとフィールドタイトルを同じにしておく、フィールドコードとフィールドタイトルを全く違うもの(ローマ字)にしておく など)
そもそもフィールドコードを編集していないということもあると思います。
計算機能を利用する場合は、必ず必要になるので確認してみてください。
フィールドの使い分け
計算に利用するフィールドは、「計算フィールド」と「文字列(1行)フィールド」の2種類があります。
この2種類のフィールドには
・計算フィールドは計算結果を「数値」で出力する。
・文字列(1行)フィールドは計算結果を「文字列」で出力する。
という違いがあります。
利用例
計算フィールドの場合
数値を計算した後、計算結果をさらに別の集計に利用できます。
文字列(自動計算)の場合
文字同士をくっつける といった事が出来ます。
計算に使うフィールド種類の注意点
計算で利用できるフィールドとできないフィールドがあります。
kitnoneヘルプ内のページで確認してみてください
値のデータ型の注意点
データ型という言葉はあまり聞き慣れないかもしれません。
ざっくり言うと
「数値の10」 と 「文字の10」 とが別物として存在してる
といった感じです。(厳密にはいくつか種類があります。)
別物として存在しているとどうなるかというと、
例えば、「数値の10」に「文字の10」を+しようとすると、足せないよ~ということでエラーになります。
イメージ的には、
数値の10は10個分の粒になっていて、
文字の10は10という絵になっている感じでしょうか。
粒同士なら混ぜて数えられるけど、絵は混ぜられないよね。
絵と絵は横に並べれば隣り合って見えるよね。
というイメージ。
「数値」は0,1,2,3,4,5,6,7,8,9,10といった「数」を利用するもの。
「文字列」は、あいうえお赤青黄 といった文字や 文字としての”0123456789”を利用します。
「1」っていれてるのにエラーになって計算されない~・・・
といった時は利用しているフィールドが間違っていないかを確認してみましょう。
参照時のデータ型、計算後のデータ型というものが、kitnoneヘルプ内のページでありますので確認してみてください。
計算式の書き方のポイント
式の書き方
計算式には「演算子」と呼ばれるものや「関数」と呼ばれるものを使います。
演算子は、「+」「-」「&」といった、計算に要する文字を利用する。
関数は、IF()、SUM()といった 「機能」を利用するというイメージです。
各種演算子・関数の使い方はここでは記載しませんので、基本的な使い方や機能は以下のリンクからkintoneヘルプを確認してみてください。
書き方のポイント
関数の式は改行と空白を利用することができます。
シンプルな式であれば、あまり気にする必要はありませんが、長めの式の場合は、改行や空白を利用することで、読みやすく書くことができます。
例)1月~12月から選択された値によって表示を変える場合
改行なし
IF(ドロップダウン = "1月", "A",IF(ドロップダウン = "2月", "B",IF(ドロップダウン = "3月", "C",IF(ドロップダウン = "4月", "D",IF(ドロップダウン = "5月", "E",IF(ドロップダウン = "6月", "F",IF(ドロップダウン = "7月", "G",IF(ドロップダウン = "8月", "H",IF(ドロップダウン = "9月", "I",IF(ドロップダウン = "10月", "J",IF(ドロップダウン = "11月", "K",IF(ドロップダウン = "12月", "L", "選択されていません" ))))))))))))
改行あり
IF(ドロップダウン = "1月", "A",
IF(ドロップダウン = "2月", "B",
IF(ドロップダウン = "3月", "C",
IF(ドロップダウン = "4月", "D",
IF(ドロップダウン = "5月", "E",
IF(ドロップダウン = "6月", "F",
IF(ドロップダウン = "7月", "G",
IF(ドロップダウン = "8月", "H",
IF(ドロップダウン = "9月", "I",
IF(ドロップダウン = "10月", "J",
IF(ドロップダウン = "11月", "K",
IF(ドロップダウン = "12月", "L", "選択されていません"
))))))))))))
まったく同じ内容の式ですが、パッと見て内容が分かりそうなのは、改行ありの方ではないでしょうか。
式が読みやすいメリットとして、修正が必要になった時に内容を把握しやすくなることや、他のアプリで同様の式を利用したいときにどの部分を修正すべきか判断しやすくなるといった事が挙げられます。
一度公開したら終わり!というわけではないので、読みやすい書き方というのは、結構大事だったりします。
まとめ
計算に関する、フィールドの説明、計算式の書き方、関数の読みやすい書き方のポイントを紹介しました。特に読みやすい関数の書き方は自分の為にも、他の人のためにもなるので、知らなかった方は実践してみてください。