キンコミ kintone user community

みんなの投稿

2025/05/10 09:18

KINTONEの関数で悩んでいます。AIと相談して色々試していますが、上手くいきません。やりたいことは、データ元は文字列フィールド「データ」にある内容が文字情報の場合と数値情報の場合が混在しているという絶対条件のもと、文字の場合は、そのまま文字を転記し、数値の場合は四捨五入の計算をするというものです。試した関数はIF(値!="",ROUND(数値,0),"") その結果は文字が#CONVERT!エラーですが数値は正しく四捨五入できます。試した事はROUND関数が数値にしか対応しないので、事前準備として文字列フィールド「データ」を、数値フィールド「数値」と文字列フィールド「値」に一旦計算式でそれぞれ転記し、そのあと新たな文字列フィールド「四捨五入」で計算式IF(値!="",ROUND(数値,0),"")をいれ、文字情報の場合はそのまま文字を表示させ、数値の場合は四捨五入の計算をするというものです。どうしても文字がエラーになってしまいます。なにかよい方法をご教授ください。よろしくお願いします。画面スクリーンショットを添付します。

1件のコメント (新着順)
かな
建設業
2025/05/10 17:58

関数の計算式として成立していないからだと思われます。

データが"空欄じゃなかったら"、ROUND(数値,0)の計算をするので、文字列でも数値でも何かしら入れられていたら"空欄ではない"ので"#CONVERT!(計算フィールドの計算結果が文字列になって、値を変換できない場合に表示されます。)"になるのだと思います。

なので、データが"空欄ではなく"かつ"文字列じゃなかったら(もしくは数値が数値として入れられていたら)" という条件にしないと成り立たないということになりますね。

ただ、IFERROR("数値がエラーになったら"などの条件やエラー結果の取得)が基本機能では使えないので、プラグインなどを使う必要がありそうです。
無料の「条件分岐処理プラグイン」か
https://fastsystem.funaisoken.co.jp/digital/branchprocess_function/
有料ですが、計算プラグインというものがあるので、こちらなどはいかがでしょうか?
https://kinkozi.webware.co.jp/product/ebdhhgjkfeljlnmhhfgflehbgokpkbhl


ATSUMARU
2025/05/10 20:02

「条件分岐処理プラグイン」をインストールしましたが、設定の方法が良く理解できませんでした。
フィールドが文字の場合はそのまま表示させ、数値の場合は四捨五入するという設定はどのようにすれば良いのでしょうか?すみませんが、教えてください。

ふゆき
製造業
2025/05/10 22:08

使える関数

「条件分岐処理プラグイン」に ROUND関数はありません
なので、コノ👆のPluginを使う場合は
(※文字には必ず「実績」が 含まれている前提として)

①デフォルトのROUND関数を使用
②下記ⓐⒷ条件により転記元を分岐設定する
 ⓐ「実績」を含む時
 Ⓑ「実績」を含まない時

こんな感じかな~  ご参考まで!

かな
建設業
2025/05/11 09:48

TO_NUMBERを使えば「#CONVERT!」が出ずに済むかなと思いまして。。。

添付例はどっちの値を入れているのか分かりやすいように数値の場合は頭に「数値:」が、値の場合は「値:」が付くようにしていますが、実際に使う時は以下の数式で良いと思います。

IF(AND(データ!="",数値=0),値, IF(数値!=0,ROUND(数値,0),""))

一応動作は問題なく出来ました。
数値がデフォルトだと入力出来てしまうので(間違いを減らすためにも)編集制限で「無効」にしています。



ただ、TO_NUMBERはデータが「0」の時も0(引用するデータは文字列側)になるのでそれだけご承知おきください🙇

ATSUMARU
2025/05/12 17:30

かなさん 指示通りやってみたら、イメージ通りに出来ました!丁寧なご説明有難うございました。

ATSUMARU
2025/05/12 17:34

ふゆきさん 文字列が実績以外にもあったので、かなさん方式を選びました。しかし、このやり方もシンプルで良かったのですが・・・。ご丁寧なご説明有難うございました。