rounddownでのエラー対処
以下の式での結果を、小数点切捨てで表示させたいと思います。
=IF(E5="","",IF($O$5/$P$5*($P$5-L5+1)="",$O$5,IF($O$5/$P$5*M5="",$O$5,IF(L5>0,$O$5/$P$5*($P$5-L5+1),IF(M5>0,$O$5/$P$5*M5,$O$5)))))
上の式にROUNDDOWN()関数を使って見ました。
一応2つ目の式は元の関数も括弧して試してみました。
=ROUNDDOWN(IF(E5="","",IF($O$5/$P$5*($P$5-L5+1)="",$O$5,IF($O$5/$P$5*M5="",$O$5,IF(L5>0,$O$5/$P$5*($P$5-L5+1),IF(M5>0,$O$5/$P$5*M5,$O$5))))),0)
=ROUNDDOWN((IF(E5="","",IF($O$5/$P$5*($P$5-L5+1)="",$O$5,IF($O$5/$P$5*M5="",$O$5,IF(L5>0,$O$5/$P$5*($P$5-L5+1),I(M5>0,$O$5/$P$5*M5,$O$5)))))),0)
ここで質問ですが、セルE5の数字を消す(空白)とエラーになってしまいますので、エラーの回避方法をお願いします。(式の通りE5が空白であれば結果も空白にさせたい)
ROUNDDOWN()関数を使用する前はエラーにはなりません。
補足
・上記はG5セルの関数です
・$O$5には小数点以下3桁までの数字が入っています
・$P$5には必ず正整数が入ります
・F列には=ROUNDDOWN($N$5*E5,0)の式が入っており、$N$5には小数点以下2桁までの数字が入っています(※質問式とは直接関係ありません)
・同じ行でL列とM列同時に数字が入ることはありません。またどちらも空白になることはあります。何れも正整数か空白です。
・その他セルには正整数か空白が入ります
=IF(ISERROR(ROUNDDOWN(IF(E5="","",IF($O$5/$P$5*($P$5-L5+1)="",$O$5,IF($O$5/$P$5*M5="",$O$5,IF(L5>0,$O$5/$P$5*($P$5-L5+1),IF(M5>0,$O$5/$P$5*M5,$O$5))))),0)),"",ROUNDDOWN(IF(E5="","",IF($O$5/$P$5*($P$5-L5+1)="",$O$5,IF($O$5/$P$5*M5="",$O$5,IF(L5>0,$O$5/$P$5*($P$5-L5+1),IF(M5>0,$O$5/$P$5*M5,$O$5))))),0))
と入力するとエラーは回避できますが、式がとても長くなり見づらいです。条件付書式も使用しないで考えたいです。
質問に元式を使用していますので分かり難いかもしれませんが、回答の方宜しくお願いします。
お礼
どうもありがとうございます。