• 締切済み

エクセルのSUM数式で。

ある列の合計を算出したいのですが、ただその列は、IF数式の結果が表示されているのですが、「#value!」も含んでいるのです。このため合計がでないのですが、「#value!」のセルを無視して、合計を算出する方法はないでしょうか? ちなみに、IF数式の結果「#value!」がでることは、回避できません。 よろしくお願いします。

みんなの回答

  • beer55
  • ベストアンサー率33% (7/21)
回答No.7

お晩で~す。 合計にエラー値が含んでいる場合の合計について (1)エラー値が1種類の場合 =SUMIF(合計範囲,"<>エラー種類") [例]:A1からA10の間に「#REF!」のエラー値が有った場合 =SUMIF(A1:A10,"<>#REF!") (2)エラー値が複数の場合、配列数式です。 =SUM(IF(ISERROR(A1:A10),,A1:A10)) と入力、配列数式ですので 「Shiftキー」+「Ctrlキー」を押しながら「Enterキー」を押してください

すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.6

配列数式を使うなら、ISERRを使うよりも下記が良い。 #N/Aも避けて足さないから。 =SUM(IF(ISERROR(A1:A8),"",A1:A8))といれ 左手指でShiftキーをおしながら、Ctrlキーも押しつつ、右手でEnterキーを押す。 仕組み・理屈は 例えばA1:A8が下記とする。         先だってIF文を実行 #VALUE! --ISERROR(A1)がTRUE-足さない #N/A --ISERROR(A2)がTRUE-足さない 1 --ISERROR(A3)がFALSE-A3=1 2 --ISERROR(A4)がFALSE-A4=2 3 --ISERROR(A5)がFALSE-A5=3 #DIV/0! --ISERROR(A6)がTRUE-足さない スペース --ISERROR(A7)がFALSE-A7 0を足すと同等 スペース --ISERROR(A8)がFALSE-A8 0を足すと同等 -------------------------- その後上記のそれぞれをSUM(合計) 6=1+2+3

すると、全ての回答が全文表示されます。
回答No.5

#2さんの意味を説明しますと、最初の範囲B1:B6で0より大きい数値の条件で、次の範囲B1:B6を合計する、という式です。 すなわちこの場合、0以下の数値があった場合は、合計しないということになります。 論理的に#value!その他のエラー(#NA!エラーを除く)を無視して合計する場合は以下の関数を利用します。 ただし、配列数式ですので、式を入力したら、CTRL+SHIFTを押してからエンタを押します。 (以下の式が{}で囲まれる) =SUM(IF((ISERR(A1:A6)),"",A1:A6))

すると、全ての回答が全文表示されます。
  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.4

ユーザー関数を定義します。 名前は既存の関数名以外なら何でも良い。例えばESUMとします。 ツールーマクロ-VBE-挿入-標準モジュールの画面に Function esum(a) Dim cl As Range t = 0 For Each cl In a If IsError(cl) = True Then Else t = t + cl End If Next esum = t End Function を貼りつけます。 シートに戻って、合計を出すセル(下記ではA6)に =esum(A1:A5)とか入れます。 例えばA1:A5が 1 #DIV/0! 3 #DIV/0! 4 の場合=esum(A1:A5)とA6に入れて、答えは8です。

すると、全ての回答が全文表示されます。
回答No.3

IF数式の結果が「#value!」となるのであれば、それを0に変えた方が良いのでは? 具体例を示せば…  A1=aaaaa  b1=1  c1=A1+B1   この場合結果は「#value!」です。 次の様にすれば如何ですか?  C1=IF(ISERROR(A1+B1),0,A1+B1)…エラーなら0を返す。 こうすればSUM関数は全体を指定出来ます。

すると、全ての回答が全文表示されます。
  • akio_myau
  • ベストアンサー率34% (515/1480)
回答No.2

例えばB1からB6の合計を出す場合 =SUMIF(B1:B6,">0",B1:B6) でどうでしょうか。

yunji
質問者

お礼

ありがとうございます。うまくできました。 追加ですみませんが、この数式の内容を教えて頂けると、さらに助かるのですが・・・。

すると、全ての回答が全文表示されます。
  • ogura_kei
  • ベストアンサー率33% (115/346)
回答No.1

コロンブスの卵です。 =SUM(A1:A2)+=SUM(A4:A5)

yunji
質問者

補足

早速ありがとうございます。 確かにこの方法であれば、A3は無視されますが、#value!がどこのセルにあるかは、常に変動しておりますので、毎回この作業をおこなうのは、少し手間がかかるのですが・・・。

すると、全ての回答が全文表示されます。