端数処理:切り上げで0の場合も切り上がり1が入る。
お世話になっております。
金額端数区分=切り上げですが、以前教わった下記の式で対応しております。
IF(金額端数区分=3,Fix(金額+IF(金額<0,-0.9,0.9),10,2),0)))
しかし、0の場合も1と表示されてしまいます。
何か考えられる設定等お分かりでしたら教えて頂きたいです。
-
小数点以下第1位が≠0の場合、1増値させて、小数点以下有りの項目へ切り上げ結果を格納するという前提での、実験を行いました。小数点以下第1位を切り上げという表現でいいですかね?

-
先程の式よりももっとシンプルで洗練されたやり方もきっとあると思います。
-
Fix( 金額 + IF( Fix( 金額,0,1)=0, 0, IF( 金額<0,-0.9, 0.9)), 5, 0)
よりも、以下の方がずっとシンプルだと思いました。
Round( 金額 + IF( 金額 > 0, 0.4, -0.4), 5, 0) -
金曜日のyamamotoさんの投稿の式は金額が整数でしたかね?
切り上げ前の値が0だったとしても0.9を足せば、受取側の変数が整数値の場合、小数点以下第1位で四捨五入されて1になります。
サインインしてコメントを残してください。
コメント
5件のコメント