• ベストアンサー

エクセルIFの使い方?結果を空欄にしたい

A1 B1 C1 D1 E1とセルがある時、 A1とB1を使ってD1に差の絶対値を入力しています。 ここでA1とB1が空欄ならD1を空欄にする方法はどうするのでしょうか? C1にはA1 B1の平均を計算(ただしA1 B1が空欄なら空欄になるように) =IF(ISERROR(AVERAGE(A1:B1)),"",AVERAGE(A1:B1)) を入力しています。 そして D1にはA1とB1の差の絶対値を入力するために =MAX(A1:B1)-MIN(A1:B1) を入力しています。 ここまではOKでした。 ここからなのですが、 D1もC1と同じようにA1 B1が空欄なら空欄になるように設定したいのですがどうしたらよいのでしょうか? =IF(C1="","","MAX(A1:B1)-MIN(A1:B1)") かな、とも思ったのですが上手くいきません。

質問者が選んだベストアンサー

  • ベストアンサー
  • oyaji-man
  • ベストアンサー率34% (123/354)
回答No.5

=IF(C1="","","MAX(A1:B1)-MIN(A1:B1)") これではA1とB1に何か数字が入力されるとD1にMAX(A1:B1)-MIN(A1:B1)と式が表示されます ””で式を囲っているのが原因です。 D1に =IF(C1="","",MAX(A1:B1)-MIN(A1:B1)) と入力してください。

その他の回答 (5)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.6

>A1とB1を使ってD1に差の絶対値を入力しています。 ここでA1とB1が空欄ならD1を空欄にする方法 =IF(AND(A1="",B1=""),"",ABS(A1-B1)) AND(他の場合によったらOR関数)を使えばすむもの。 他も類推されたい。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.4

一例です。 C1は=IF(A1*B1,AVERAGE(A1:B1),"") D1は=IF(C1<>"",ABS(A1-B1),"")

  • sige1701
  • ベストアンサー率28% (74/260)
回答No.3

こんな感じで良いかな =IF(COUNT(A1:B1),ABS(A1-B1),"")

  • redowl
  • ベストアンサー率43% (2140/4926)
回答No.2

>  D1にはA1とB1の差の絶対値を入力するために > =MAX(A1:B1)-MIN(A1:B1) 2値の差の絶対値は、下記の式でも・・・ =ABS(A1-B1)

  • kigoshi
  • ベストアンサー率46% (120/260)
回答No.1

いろいろ方法はあるでしょうが、 =IF(ISNUMBER(A1-B1),MAX(A1:B1)-MIN(A1:B1),"") とかではどうでしょう。A1、B1に文字列が入ったときも空白になります。

関連するQ&A

  • 配列数式で平均を出すと空欄が0で計算されてしまう

      A B C D 1  1 2 1 {=AVERAGE(IF($A$1:$A$4=$C1,B$1:B$4))} 2  1 4 2 {=AVERAGE(IF($A$1:$A$4=$C2,B$1:B$4))} 3  2 6 4  2 8 上記のような数値、数式ですと、 B列すべてに数値が入力されているため、問題なく計算するのですが、 例えば、B2のセルを空欄にすると、空欄を0としてしまい、 D1の計算結果が1となってしまいます。 D1の数式を=AVERAGE(B1:B2)としますと、空欄は空欄として扱い、 計算結果は2となります。 配列数式を使った場合にも、空欄を空欄として扱い、 計算結果が2となるような方法はありませんでしょうか。 よろしくお願いします。

  • if関数について教えてください。 空欄は空欄で返す

    成績の振り分けです。これまでの回答から、80点以上A、70から79はB、60から69はC、60点以下はD、と下記の関数でどうにか振り分けることができました。 しかし、データが入力していない空欄に「D」とでます。Dがでないようにしたいのですが、その方法を教えてください。 また、もっとシンプルな方法がありましたらそちらも教えてください。よろしくおねがいします。 =IF(AF5>=80,"A",IF(AF5>=70,"B",IF(AF5>=60,"C",IF(AF5<60,"D",""))))

  • EXCELでの集計

     Excel2000で以下の表の最大絶対値と最小絶対値を求めたい A B C D 1 +1 +3 -7 2 -8 +2 +5 3 -3 +4 -2   D1に絶対値の最大値(8)D2に絶対値の最小値(1)を返したいのですが、最大値は、先日教えてもらって =IF(ABS(MAX(A1:C3))>ABS(MIN(A1:C3)),MAX(A1:C3),MIN(A1:C3))で求められましたが、絶対値の最小値は、まず各セルの絶対値を求めて、その中から最小を求める以外にないのでしょうか?できれば、1つのセルに関数を入れて答えを求めたいのですが。

  • Excel if関数の正誤の考え方

    こんにちは。 MOS Excel 2010 Expertの問題集を解いています 問題はシートに A1~A40 生徒名 B1~B40 1回目テスト結果 C1~C40 2回目テスト結果 が入力されています。 配列を使って、各生徒の良い方の成績で セルD1に平均を求めなさいというものです。 正解は =average(if(B1:B40>C1:C40,B1:B40,C1:C40)) と、セルD1に入力して Ctrl+Shift+Enter だと思うのですが。 問題集の正解は =average(if(B1:B40>C1:C40,C1:C40,B1:B40)) とB列とC列が逆になっています。 これは問題集が間違っていると思うのですが 私の考え違えでしょうか?

  • エクセルのIF式教えて下さい。

    何度やっても上手く思うように行きません。 IF式の組み立て方が悪いのか? AND、ORの使い方が悪いのか? お手上げの状態です。 質問は、2つのパターンです。 助けて下さい。 質問1 セルA1にデータ10と入力 セルA5にデータ5と入力 セルA9に大きい値の10を表示させ、セルA1が空欄の時は、空欄にしたい。 セルA10に小さい値の5を表示させ、セルA5が空欄の時は、空欄にしたい。 質問2 セルB2に1を入力 セルC2に1を入力 セルD2に両方が1以上ならOK、それ以外ならNGと表示させたい。 以上の2つの質問のIF式を教えて下さい。

  • IF関数で空欄("")の時、Nullにしたい

    例えば、=if(A1="","","該当無")とB1に入力したとします。 A1に何も入力されていなければ、B1はもちろん空欄となりますが、 編集→ジャンプ→セル選択→空白セルを選択してもヒットしません。 計算結果が空欄の場合は、最終的にそのセルは空欄にしたいのですが良い方法はないでしょうか?

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

    エクセルのD列に =IF(ISERROR(B5/C5),0.6,IF(B5/C5>=1,1,B5/C5)) 上記の数式を入力してあります。これに加え、B5/C5が0になるとき、60%になるようにはできますか?

  • エクセルでIFとANDを使った関数について教えて下さい

    A B C D E F G 1 1 2 3 結果 2/3 2/4 2/5 2 2/3 2/4 2/5 合格 0 0 1 3 上記のような表を作成しようとしています。条件が、 D1が「合格」で、 C2の日付がE1(該当セル、E1なら2/3、F1なら2/4)と同じなら「1」、 違うなら「0」、 B2の日付がE1(該当セル、E1なら2/3、F1なら2/4)と同じで尚且つ、 C2が「空欄」なら「1」、違うなら「0」、 A2の日付がE1(該当セル、E1なら2/3、F1なら2/4)と同じで尚且つ、 C2が「空欄」で、B2が「空欄」なら「1」、違うなら「0」 を返しなさい。 という関数を作りたいのですが、上手くいきません。 IFとANDを使えばいいと思うのですが、どのように組み合わせれば 良いでしょうか。 真を返す、優先順位は、C2、B2、A2、のセルです。 C2に日付が入ってるときはB2とA2に日付が入っていても カウントされないように(偽が入るように)したいのです。 ちなみに、最初は、 =IF($D2="合格",IF($C2=E$1,1,IF($B2=E$1,1,IF($A2=E$1,1,0))),0) と、入れてましたが、これだと、C2に日付が入った時にC2だけカウント したいのに、B2もA2もカウントされてしまいます。 どうか、良きアドバイスをお願いします!!

  • エクセルで空欄と0について

    たとえばIF関数を使って、セルA3に IF(A1=1,A2,"") と入力、A1が1でA2が空欄(データがない状態)の場合、A3には空欄ではなく0が表示されるんですがなぜでしょう。また、0ではなく空欄を表示してほしいのですが、どうすればいいのでしょう?

  • エクセル IF関数が入った条件付き書式について

    エクセルにおいて、セルA1、B1、C1があるとします。A1、B1には数値が何も入力されていない状態で、C1に計算式「=SUM(A1)/B1」が入っているとします。このままでは、C1は、「#DIV/0!」と表示されます。 この表示を消すために、C1にIF、ISERROR関数を使い、「=IF(ISERROR(SUM(A1)/B1),"",SUM(A1)/B1)」の計算式を入力します。 このままでもいいのですが、C1の値が「10以上」になった時に、C1のセルに色を付けたいのです。 書式→条件付き書式→セルの値が→次の値以上→10 にすると、セルに何も値が入っていない(空白)状態で色だけが付いてしまいます。 色々調べると、IF関数の""の空白が文字列のため、数値より大きいとみなされている事が原因っていうことは、分かりましたが、色々試してみても出来ません。何かいい方法はございますでしょうか? ご教授お願いします。

専門家に質問してみよう