- ベストアンサー
IF関数
また質問します。IF関数を使い、IF(ROUNDDOWN(A1,0=0,"0",ROUNDDO WN(A1,0),IF(A1="","",""))というう式を作ってみたのですが引数が 多すぎますとエラーが出てしまいます。 式の条件はA1が0なら0、A1がそれ以外なら切捨てた数字、A1が空白 なら空白というう条件にしたつもりなのですが上手くいきません。 この数式の間違っている所と、これ以外にいい算式があれば教えて 下さい。宜しくお願いします。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
正しくない式からは意味が読み取れないので、やりたいことを書いていただいたほうが判りやすいかと… 『A1の値が空白なら空白、それ以外の場合A1の値を1の桁で切り捨てた値が0なら0、0でなければ切り捨てた値』 ということでしょうか? 実は後半はダブっているので、以下のようにまとめることが可能です。 『~それ以外の場合は、A1の値を切り捨てた値』 これを式にしてみると =IF(A1="","",ROUNDDOWN(A1,0)) となりますが、A1に文字が入っているとエラーになります。 それも回避したければ・・・ =IF(A1="","",IF(ISNUMBER(A1),ROUNDDOWN(A1,0),A1)) といった具合で、段々と長い式になってきますね。 (文字の場合は、その文字のまま表示されることにしてあります)
その他の回答 (5)
- okdeath
- ベストアンサー率28% (13/46)
こんちにわ。 すでにFEX2053さんで解決ずみだと思います。 また、mu2011さんの =IF(A1="","",INT(A1)) が、この質問の理想の回答だとおもいます。 >大変有難うございました。上の式を入れてやってにたんですが、切捨てで0になる所が空白になってしまいます。 失礼ですが、gerorianさんのチェックミスだとおもいます。 ちゃんと切捨てで0は0と表示されます。
- Sinogi
- ベストアンサー率27% (72/260)
#1で解決しているのでは?
- mu2011
- ベストアンサー率38% (1910/4994)
ご提示の数式はどこから進言してよいかわかりませんので、御質問者の記載されている条件の通りに数式にしてみましたので比較して下さい。 =IF(A1="","",IF(A1=0,0,ROUNDDOWN(A1,0))) 因みにセルが未入力な状態は、0または""(空白)であるから条件順は空白からにしています。 一例です。 =IF(A1="","",INT(A1))
補足
大変有難うございました。上の式を入れてやってにたんですが、切捨てで0になる所が空白になってしまいます。ここも空白ではなく0と表示させたいのですが何かいい方法はありませんか? 5.50 0.25 未入力 5 0 空白 このような感じになれば有難いです。
- 19721219
- ベストアンサー率24% (80/323)
=IF(A1="","",(IF(A1=0,0,(ROUNDDOWN(A2,0))))) 【※対象セルがA2にある場合】 if関数を連続して使う場合には、後ろから記載するとわかり易いです。 =rounddown(A2,0) =(rounddown(A2,0)) ←両サイドに()をつける =if(A1=0,0,(rounddown(A2,0))) =(if(A1=0,0,(rounddown(A2,0)))) ←両サイドに()をつける =IF(A1="","",(IF(A1=0,0,(ROUNDDOWN(A2,0)))))
- FEX2053
- ベストアンサー率37% (7991/21371)
あの~・・・そんな複雑に考えなくても。 A1がゼロならば、切り捨ててもゼロですよね。 だとするとチェックするのはA1が空白のとき空白、ってだけでしょ? =IF(A1="","",ROUNDDOWN(A1,0)) コレだけでうまくいくはずです。
補足
分かりづらくてすいません。『A1の値が空白なら空白、それ以外の場合A1の値を1の桁で切り捨てた値が0なら0、0でなければ切り捨てた値』 この文章の通りです。=IF(A1="","",IF(ISNUMBER(A1),ROUNDDOWN(A1,0),A1))この数式通りやってみたのですが、0が表示されませんでした。書式設定の問題なのでしょうか?