• ベストアンサー

累計の計算とその表示について

各セルに次のようなデータがあり、D列に累計を出してゆきます。   A B C   D 1 20 30 50  累計 2 10 20 30 3 どのセルにもデータなし(データはなくても行は必要です。) 4 15 25 35 累計を出してゆくとデータのないセルがにも累計が表示されます。書式のユーザー設定で非表示に出来ることは分かったのですが、この表を使うのは私だけではないので、関数を使って出来ればと思い、IF関数にandやorなどの組み合わせで考えましたができませんでした。どういうやり方がよいのでしょうか。

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

  • ベストアンサー
  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.5

    A   B   C   D   E 1  項目1 項目2 項目3 合 計 累 計 2   20   30   50   100   100 3   10   20   30   60   160 4 5   15   25   35   75   235 上のような表を想定すると、 D2セルには =IF(COUNT(A2:C2)>0,SUM(A2:C2),"") E2セルには =IF(COUNT(A2:C2)>0,SUM($D$2:D2),"") として、下にコピーします。 入力を厳しくチェックしても意味がないかもしれませんが、 D2を =IF(AND(A2="",B2="",C2=""),"",SUM(A2:C2)) のような式にしておくと 文字やスペースを入力するとSUMを計算してしまいます。

takkuni
質問者

お礼

知識がお粗末で絶対指定のところがピンと来ませんが、お陰様でご指摘の通りやってうまくいきました。 ありがとうございました。

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

その他の回答 (4)

  • jindon
  • ベストアンサー率43% (50/116)
回答No.4

ひょっとして"累計"ということは、D列の累計ですか? C列に数値がある最終行のD列に"累計"を表示 D1: =IF(ROW()=LARGE(IF($C$1:$C$500<>"",ROW($C$1:$C$500),""),1),SUM(A$1:C1),"") Ctl + Shift + Enter で確定 はずれているかも....

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

考えるとおりに式にして、D1セルに =IF(AND(A1="",B1="",C1=""),"",SUM(A1:C1)) D2以下にD1のセルの式を複写する。

takkuni
質問者

補足

済みません。あわてていたため質問を間違えました。 ご指摘頂いた方法で横方向(D列)の合計は求めており、問題ありません。質問は累計の方です。 E列に累計を求めていきたいのですが、普通にやると空白行にも累計額が表示されてしまいます。このデータがない空白行の累計の値を非表示にしたいということです。 if関数で0や””を使うと空白行の次の計算から累計額がリセットされてしまいます。#1さんや#2さんにもご迷惑をお掛けしましたが、引き続きお知恵拝借お願いします。

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

必要がなければブランクにしてしまえばいいです。 セルに数字が入った時は計算するならいIF関数で出来ます、=IF(sum(a3:c3)=0,"",sum(a3:c3))かな。

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

お晩です。 配列数式です。 D1=IF(A1:C1<>"",SUM(A1:C1),"")と入力 Shiftキー+Ctrlキー+Enterキーを押して確定してください 配列数式については下記のURLを参照してください

参考URL:
http://pc21.nikkeibp.co.jp/special/hr/
すると、全ての回答が全文表示されます。

関連するQ&A