- 締切済み
IF関数?
初心者です。 例えばE4の列にE3+D4という式が入ってます。 この式をそのまま下にコピーしていくと何も入力されていないのに数字がそのまま入ってしまいます。 これをDの列に何も入っていない場合は何も表示しないようにするにはどうしたらいいでしょうか? いろいろ試してはみたのですが上手くいきません。教えてください。
- みんなの回答 (8)
- 専門家の回答
みんなの回答
空白を表示させたいために、「IF(A1=0,""...」のように「""(長さ0の文字列)」を使うのはお勧めしません。 その結果を、別の計算式に使えなくなってしまうからです。 特定のセルのゼロを表示したくなければ、 そのセルの表示書式に「#,##0;-#,##0;」などと設定して、ゼロの場合は表示しないようにするのがベターだと思います。 因みに、表示書式は「+の時、-の時、ゼロの時、文字の時」の4つのシチュエーション別に設定することが出来ます。それぞれは「;(セミコロン)」で区切ります。 上記の例では「+と-の場合」を設定した最後に「;」を付け加えているので、「ゼロの時は何も表示しない」という設定になっています。
- guchi_yama
- ベストアンサー率47% (57/119)
すいません。 説明の関数がsam(E7,D8)になっていました;; sum(E7,D8)の間違いです。すいません。
- guchi_yama
- ベストアンサー率47% (57/119)
=IF(ISBLANK(D8),"0",E7+D8) の"E7+D8"部分をsam(E7,D8)と変えれば、エラーは出ませんよ。 上の式を使うと =IF(ISBLANK(D8),"0",SUM(E7,D8)) となります。関数式で"+"を使うのはエラーのもとなので あまり使わない方が良いですね(^^)b
- imogasi
- ベストアンサー率27% (4737/17069)
関数を (1)前もって関数式を入れておく使い方 (2)データを入れ終わってから関数式を入れる使い方。 (3)(2)だが、空白のセルもありえるとする場合 (1)(3)の場合に、質問のようなことは起こります。 ーー 通常は =IF(D4="","",式) とか =IF(AND(D4="",E4=""),"",式) とか =IF(OR(D4="",E4=""),"",式) 上記ANDをORが適当な場合もあります。 ーー ""は空白を返してますが、(後にこの値を使う関数の利用を考えて)0が良い場合もあるかもしれない(経験では余りない)。 ーー 関数によっては、空白(未入力)の場合エラーが表示されるケースがある。VLOOKUP関数など) その場合 (1)上記のような回避法(引数の値を採り上げる考え方) (2)エラーが起こったことを関数で捉えて、決めた値(空白など) をセットする。(ISERRORなどの利用。)もある。 (関数の結果を採り上げる方法。)
=IF(ISNUMBER(D4),E3+D4,"") ()は冗長でした!
=IF(ISBLANK(D4), "", IF(ISNUMBER(D4), E3+D4, "")) =IF(ISNUMBER(D4),(E3+D4),"") 上の式は、D4が空白か否かをテスト。 真であれば、""をE4に表示。 偽であれば、更に、D4が数字であるか否かをテスト。 真であれば、E3+D4の合計値を表示。 偽であれば、"" を表示。 下の式は、D4が空白か否かのテストをスキップしたいます。 さて、上も下も結果は同じです。 ならば、下の式でOKということだと思います。
- NOBBB
- ベストアンサー率26% (82/308)
=IF(ISBLANK(D4),"",E3+D4) ~~説明~~ IF関数を使います。 ISBLANKは対象となるセルが空(ブランク)かだけを見る関数です。 なのでD4が空の時は「真」(True)として返ってきます。 真として帰ってきた時は、「""」これで何も表示しない。 偽(False)として返ってきた場合は計算する。 こんな感じでどうでしょうか? ちなみに >E4の列にE3+D4という式が入ってます。この式をそのまま下にコピーしていくと・・・ としていますがE3とE4は同じ列なので上書きしてしまいますよ?
- gosuke32
- ベストアンサー率29% (36/124)
「0」の表示をしなくて良いなら 「ツール」→「オプション」で表示タグをクリックして、「ゼロ値」のチェックをはずせば、「0」は表示されません。 または、E4のセルに =IF(COUNTA(E3,D4)=0,"",E3+D4) を入力すれば良いと思われます。
補足
また分からないことが出てきました。 この表月曜から日曜まであって土日はEの列が累計で0になります。 Eの列に IF(ISBLANK(D8),"0",E7+D8) の計算式を入れると土日をはさむと全ての累計が出てきません。 どうしたらいいでしょうか?