エクセルでマイナス合計?

解決済みの質問

エクセルでマイナス合計?

エクセルのセル(横並び)に数値が入っていて、引き算での集計値を求めたいのですが、何かよい関数はありませんか?
(SUMのマイナス版と言ったところでしょうか)
例:
A1 | B1 | C1 | D1 | E1
1000| 500| 200| 100|=(A1-B1-C1-D1)
見たいなかんじで、全てを引き算したいです
(E1には200が入ります)
後から列を挿入すると式にも追加をしなければならないので、それを解消する方法でもいいのですが

よろしくお願いします

投稿日時 - 2002-11-10 00:26:05

連想キーワード:

QNo.400937

すぐに回答ほしいです

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

#3さんの回答とほぼ同じですが、
OFFSETを使って
A1の1つ右セルからE1(合計表示のセル)の1つ左のセルまでを合計し、A1から引けばいいと思います。

---------------------------------------
=A1-SUM(OFFSET(A1,0,1):OFFSET(E1,0,-1))
---------------------------------------

この式は=A1-SUM(B1:D1)と同じ事ですが、
例えば
=A1-SUM(B1:D1)とした時に、C列や、D列の上で挿入した場合には
=A1-SUM(B1:E1)と式が変化しますが、
B列の上で挿入(A列とB列の間に挿入)した場合=A1-SUM(C1:E1)となり、
E列の上で挿入(D列とE列の間に挿入)した場合には変化しません。

上記の式は、それに対応した式になっています。

ただし、A列の上で挿入(A列の前に挿入)した場合には、対応していません。

投稿日時 - 2002-11-11 01:27:34

お礼

ありがとうございます

わかりやすい説明で助かります
すごくわかりました


これで無事解決できそうです
ほかのお返事くださった皆様もありがとうございました

投稿日時 - 2002-11-11 02:17:33

ANo.6

0人が「このQ&Aが役に立った」と投票しています

[  前へ  |  次へ ]

ベストアンサー以外の回答(5件中 1~5件目)

ANo.5

みなさん こんにちは

OFFSET()での数式が出ると INDIRECT()の方法も(^^;

どの列にて挿入作業をしても
(B列)~(式の入る手前の列)までの値をA列の値から
引く式をお望みなら
=A1-SUM(INDIRECT("B"&ROW()&":"&CHAR(63+COLUMN())&ROW()))

AとBの間で列を挿入することがないのであれば
=A1-SUM(B1:INDIRECT(CHAR(63+COLUMN())&ROW()))
でも可能です。

投稿日時 - 2002-11-10 12:23:56

お礼

ありがとうございます

INDIRECT()
またまた難しい関数が・・・
今回私には使いこなせそうにないです
勉強します

投稿日時 - 2002-11-11 02:15:22

ANo.4

#3のご回答の一部に対する疑問です。
>D列とE列の間に列を挿入すると算式を修正する必要がある。
例えばA1に=sum(b1:c1)といれ、C列を指定して列挿入すると、=SUM(B1:E1)となり、変化してくれましたが。
対象セルが増えるのが困るのでしょうか。
>質問の「後から列を挿入すると式にも追加をしなければならないので、それを解消する方法でもいい」
対象セルが増えて欲しいと受け取れますが。

投稿日時 - 2002-11-10 08:02:47

お礼

ありがとうございます

対象のセルは増えていきます
nishi6さんの言いたかったのは、多分cafedemochaさんの返事でのつなぎだと思います

投稿日時 - 2002-11-11 02:13:40

ANo.3

 A1| B1| C1| D1| E1
1000| 500| 200| 100| 式

のE1に、例えば、

 =A1-SUM(B1:D1)

とすれば、計算はできるが、D列とE列の間に列を挿入すると算式を修正する必要がある。
ということでしょうか。(A列とB列の間の挿入もダメでしょう)

1行目の計算は、上の状態で、E1に

 =$A1-SUM(OFFSET($A1,0,1):OFFSET($A1,0,COLUMN($E:$E)-2))

とすれば、D列とE列の間(またはA列とB列の間)に列を挿入しても算式を修正する必要はありません。
下方向にコピー可能です。

1行目の場合、A1の右のセルから集計する列の左のセルまでの集計値をA1から引いています。
なお、この式はC列から使うことができます。(Excel2000です)

投稿日時 - 2002-11-10 01:42:55

お礼

ありがとうございます

OFFSET関数、知らなかったです
勉強になりました

助かりました

投稿日時 - 2002-11-11 02:07:39

ANo.2

へ?これじゃぁ、まずいのかなぁ?
=A1-SUM(B1:E1)
列を追加する時は、E列とB列の間にすれば、勝手に範囲に入れてくれるけど・・・
()で括れば、中はただの和でしょ?、これじゃぁ不都合あるんですか?

投稿日時 - 2002-11-10 00:41:52

お礼

ありがとうございます

D列とE列の間もカバーしたいですが、これだとできないですよね

投稿日時 - 2002-11-11 02:05:35

ANo.1

A1-Σ(Bi+Ci+Di+Ei)ではどうでしょうか?
後から列の挿入はFi+Gi+・・・と加えていけば良いです。

投稿日時 - 2002-11-10 00:36:09

お礼

ありがとうございます

Σ(Bi+Ci+Di+Ei)
というのがちょっとわかりません
けれど、それだと列の追加をしたときには
手動で追加しないといけないような感じですね

投稿日時 - 2002-11-11 02:01:25

あわせてチェックしたい
  • |a|=2,|b|=1,a・b=√2 を満たす2つのベクトルa,b,が ...
  • エクセル SUM関数 ...
  • |a+1|=a+1 |a-1|= a-1 (a-1≧0), -(a-1) (a-1<0) ...
PR

OKWaveのオススメ

教えて弁護士さん!

お金の悩みQ&A特集はこちら