- 締切済み
エクセル 一行置きに表面上の数字を足す方法
どなたか詳しいかたおりましたら、 アドバイスお願いします。 質問内容はタイトルの通りなのですが、 以下に詳しく記載します。 5.5+6.5の数式がある場合、エクセルでは四捨五入していますので、 表示は6+7になります。 このまま、オートSUMで計算してしまうと、 6+7=12と表示されてしまうので、 以下の数式を使用して、 =SUMPRODUCT(ROUND(A1:A2,0)) 6+7=13 と表示させています。 そこで、上記の場合、行(もしくは列)が連続していますので、 上記の数式で良いのですが、 これを一行置きで計算させたい場合は、 どのような数式になるでしょうか? 試しに、 =SUMPRODUCT(ROUND(A1+A3,0))とやっても エラーになってしまい、うまくいきません・・・。 どなたか詳しいかたアドバイスお願い致します。
- みんなの回答 (6)
- 専門家の回答
みんなの回答
直接的に =SUM(ROUND(A1,0)+ROUND(A3,0)) がいいかと思いますが。 まだ、意図が理解できていないでしょうか?
- Cupper
- ベストアンサー率32% (2123/6444)
四捨五入された数値でしか計算しないのであれば、 オプション → 「計算方法」タブ → 「ブックオプション」項目 → 「表示桁数で計算する」にチェックを付ける を行うとROUND関数を使わなくて済みますので少しは楽になるかと思います。 (ブック全体で表示桁で計算するようになります) 一行おきに計算・・・というのが良く分かりませんが、 ROW関数で行が奇数か偶数かを確認できるので一行おきに計算させる判断になります。 そうではなく=A1+A2、=A1+A3、=A1+A4・・・・という計算式を連続して作りたいのであれば、 =$A$1+A2 これを下方向へフィルすれば簡単にできます。 ($マークは列・行を示す文字の前につけると、フィルでコピーしても列・行をそれぞれ固定するようになります) =$A$1+A3 =$A$1+A4 ・ ・ ・ 意図が違っているかもしれませんが、参考まで。
=SUMPRODUCT(ROUND(A1+A3,0)) であってますよ、コピペしてもうまくいきました。 ただ、そもそもの意図が不明です。 入力は、5.5+6.5なので12になります。 表示は6,7でも、値は入力値の5.5、6.5を保持しています。
補足
回答ありがとうございました。 やってみたのですが、 やはり入力値の数字で計算されてしまいました。 表示上の数で計算したい & 入力値は残しておきたい というのは、わがまますぎでしょうか・・・。 エクセルでは無理でしょうか・・・。 そもそもの意図を言いますと、 金額を集計したいので、小数点以下は四捨五入して 整数で計算、さらに、細かいデーターを残しておきたいが為に、 表示上の数で計算したい & 入力値は残しておきたいを 何とか実行したいのです・・・。 ありがとうございました。
- zizi-chan
- ベストアンサー率66% (14/21)
もしかして、質問を理解できていないのかもしれませんが・・・ セルA1+セルA3 の数値を整数に四捨五入したものを足すという事でしょうか? SUM(ROUND(A1,0),ROUND(A3,0))で答えはでますが。 SUMPRODUCT関数は積を求める関数です。もしもSUMPRODUCT関数で積を求めるならば、SUMをSUMPRODUCTに置き換えると計算できます。 質問の意味を取り違えていたら、申し訳ありません。
- maron--5
- ベストアンサー率36% (321/877)
◆ANo.1は奇数行の場合です ◆偶数行の場合は =SUMPRODUCT((MOD(ROW(A1:A10),2)=0)*(ROUND(A1:A10,0)))
- maron--5
- ベストアンサー率36% (321/877)
=SUMPRODUCT((MOD(ROW(A1:A10),2)=1)*(ROUND(A1:A10,0)))
補足
ありがとうございました。 早速やってみたところ、一発で表示数で計算されたので 「おぉ!関数いれなくても出来るんだ」と思いきや・・・ 1.5や2.5のデーターが消え、2と3になってしまいました。 表示上はそれで良いのですが、元のデーター1.5と2.5は 残しておきたいのです・・・。 折角教えて頂いたのにすいません・・・。ありがとうございます。