- ベストアンサー
数式を教えてください。(エクセル)
教えてください。 A1セルに100、B1に200、C3に-300 A2セルに-50、B2に50、C3に-50 があるとします。 で、縦の計算法を常に引き算をしたいのです。(A1-A2のように) オートSUMの場合、Aの列はちゃんと計算できると思うのですが、そうするとBの列は250になってしまいますよね。 この答えは200-50=150としたいのです。 またC列は、-300引く-50で、答えは-250としたいのですが・・・ マイナスを認識しつつ、セルの数値がプラス・マイナスにかかわらず すべて引き算計算をしたいのですが、 そういう数式ってありますか?
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
だいたいなんで・・・と言いたいところですが、 それはおいといて・・・ 一回やりたい計算を数学(算数?)的に数式にしてみたらどうですか? 例えば、今ある情報で判断すると、やりたい計算は、 1行目をx,2行目をyとして、 x/|x|(|x|-|y|) ってとこですか?(x/|x|は単に符号(±)が欲しいため) 上の式では使いませんでしたが、場合わけしてもいいです。(例:xが正の値なら・・・) で、これをExcelの数式にすると、Excelには符号を得る便利な関数SIGNがあるので、 =SIGN(A1)(ABS(A1)-ABS(A2) となります。 要するにイメージでこんなことをやりたいと思って、自分でもわけがわからないことは、まず文書化してみましょう。大体その過程で問題は解決してしまいます。
その他の回答 (5)
- S-Fuji
- ベストアンサー率36% (592/1624)
=A1-ABS(A2)では、C列の計算が-350になります。
お礼
ありがとうございます。 そうなんです、ようやくさっき気づきました。(汗) やっぱり理論的におかしいと思うんですが・・・ 上司に見せられた資料も、すごくわかりづらいんですよね・・・ 明日もう一度確認してみます。 お騒がせしてすみません。
- Wendy02
- ベストアンサー率57% (3570/6232)
こんばんは。 きちんとした、説明が出来ていないような気がしますが、こういうことではないかと思います。 A B C 1 100 200 -300 2 -50 50 -50 3 ・ ・ ・ 4 ・ ・ ・ 5 ・ ・ ・ 6 ・ ・ ・ ←ここの間にも数字があるする 7 ・ ・ ・ 8 ・ ・ ・ 9 ・ ・ ・ 10 50 150 -250 というような場合も想定すると、 例えば、A10 ですと、 =SIGN(A$1)*(ABS(A$1)-SUMPRODUCT(ABS(A$2:A9))) のような式になりますね。
お礼
ありがとうございます。 数式が難しすぎて、理解不能です・・・ すみません。 やっぱり基本的な事からもう一度勉強しなおそうと思いました。 関数までたどり着くにはまだまだですが・・・ それにしてもエクセルってすごいですね。 なんでもできますよね・・・ それを使いこなしておられるみなさんも、本当にすごいなあと思います。
- S-Fuji
- ベストアンサー率36% (592/1624)
数学的に言っていることが合っていません。
お礼
回答ありがとうございます。 やっぱりそうですよね? 実は上司にこういう計算をしてくれ、と言われたのですが、 どうも理論的に合ってないような気がして、悩んでたんです。 #2さんに教えていただいた方法でだいぶ解決したのですが、C列の計算の答えが、求めているー250になる、というのが、理論的におかしいですよね? 上司に言われたので自分が間違っているのかとだいぶ考えたんですけど・・・ やっぱりおかしいですよね??? 明日上司にもう一度確認してみます。 ありがとうございました。
- char2nd
- ベストアンサー率34% (2685/7757)
こういうことでしょうか。 =A1-ABS(A2) つまり、2行目にある数値は、それが+であれ-であれ、1行目の数値からその値の絶対値を除算する、という意味だと思うのですが。
お礼
ありがとうございます!!!!! おっしゃるとおりです~~~ ABSですか・・・勉強になりました。 もっと勉強します。助かりました。
- edomin
- ベストアンサー率32% (327/1003)
A列の計算も合っていません。 100-(-50)=150です。 100+(-50)=100ではありません。 例えば、A3のセルに 「=A1-A2」と入力し、B3、C3セルにコピーしましょう。
お礼
早速のご回答ありがとうございます。 すみません、書き方が悪かったようです。 A列の場合、100引く-50で、答えは50としたいのです。 この場合はオートSUMでできるんですけど、 B列の場合はこれだと当然足し算になってしまうので、「=B1-B2」 となると思うのですが これをすべてのセルにそれぞれ入力またはコピー するのは大変だと思ったもので・・・ なにかやり方があるのかなと思いました。 説明下手ですみません。
お礼
banker_Uさま、本当にありがとうございました。 教えていただいた式で完璧でした。 おっしゃるとおり、まず文書化してみるって大事ですね。 まあ私の場合、数学(算数レベルも)がかなり苦手なのでよけいこんがらがって訳わからなくなるんですが・・・ 上司も喜んでいました。 だいだいなんで・・・、私もそう思う書類です・・・ 本当に助かりました。ありがとうございます!!!