プロが教えるわが家の防犯対策術!

エクセルのIF関数について

お世話になっております。
エクセルのIF関数について教えてください。
あるセルの値がエラーなら0、数値が入っているなら、その数値をそのまま表示するという
関数を作りたいのですが、どのようにすればよろしいでしょうか?

A 回答 (4件)

あるセルがA1として


=IF(ISERROR(A1),0,A1)
    • good
    • 0

A1セルが空の場合には空で、エラーや数値でなければ0、数値であればその値を表示するとのことでしたら次のような式にないますね。



=IF(A1="","",IF(ISNUMBER(A1),A1,0))
    • good
    • 1

=IF(ISERROR(A1),0,A1)        ・・・式1


=IF(A1="","",IF(ISNUMBER(A1),A1,0)) ・・・式2
ともに不正解ですね
式1はA1がヌルの時の解としてヌルを返しません
式2はA1に=Na()と入れると#Naを返すのでこれも不正解です

=IF(ISNUMBER(A1),TEXT(A1,"#"),"")
としたいところなのですが
これだとこのセルを参照して演算させるとエラーになってしまいます

この式をお試しください
=IF(ISNUMBER(A1),VALUE(TEXT(A1,"#")),"")
    • good
    • 0

質問者さんが、空白セルや文字列の場合どう表示させたいか未記入ですから


『あるセルの値がエラーなら0』
『数値が入っているなら、その数値をそのまま表示する』
#1のmshr1962さんの式で要求は満たされています。

以下、私のは余談です。スルーでお願いします。
IF関数を考える時、一般的には、自分が優先させたい条件を先に組んでいけば良いです。
もし、値がエラーなら0、数値なら数値、(ここからは蛇足で)数値以外(文字列とか)だったら何も表示させたくない
...というのが条件だったらその順番で組めばいいです。
=IF(ISERROR(A1),0,IF(ISNUMBER(A1),A1,""))
『エラーなら0』をまず満たすべきですね。
なのでmshr1962さんに一票。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!