- ベストアンサー
関数を使った合計が1少なく集計されてしまいます
F9に =SUMIF(商品!$M$6:$M:$992,$D9,商品!$L$6:$L$992) 以下F34まで同じ計算式が入っています。 F34に =SUMIF(商品!$M$6:$M:$992,$D34,商品!$L$6:$L$992) F35でF9からF34までの集計をしています =SUM(F9:G34) F35の値が実際の計算より1少なくなってしまいます 正しく計算するには どのような計算式をいれたらいいでしょうか? 教えて下さい。よろしくお願い致します。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
再掲: >=IF(なんたら,"",算数の式) >になっているとしたら >=IF(なんたら,"",ROUND(算数の式,0)) >とします。 あなたの実際の式: =IF(K992="","",H992*IF(K992="a",1,IF(K992="b",0.9,IF(K992="c",0.8,IF(K992="d",0.7,IF(K992="e",0.55,IF(K992="f",0))))))) 「算数の式」は「H992*IF(K992="a",1,IF(K992="b",0.9,IF(K992="c",0.8,IF(K992="d",0.7,IF(K992="e",0.55,IF(K992="f",0))))))」の部分です。 回答した通りにすると: =IF(K992="","",ROUND( H992*IF(K992="a",1,IF(K992="b",0.9,IF(K992="c",0.8,IF(K992="d",0.7,IF(K992="e",0.55,IF(K992="f",0)))))) ,0)) #参考 いまのLの式を今まで通りに変えずにおいて,ご相談の最初のFの式を F9: =ROUND(SUMIF(商品!$M$6:$M:$992,$D9,商品!$L$6:$L$992),0) とすることでも,ご相談の当初の目論見通りF9:F34の合計はF35とキチンと合致します。 ただしこのやり方をすると,今度はこのF9の結果が,実際の商品シートから該当商品を目視で拾って手計算した結果と,合わない物が出てきます。
その他の回答 (4)
- keithin
- ベストアンサー率66% (5278/7941)
具体的に問題が起きている(エラーを出している)「今のアナタの式」を,ご相談ではキチンと情報提供するようにしてください。 >L列の数字の入っていないところが、#VALUE!と出てしまいます。 たぶん,今までの式でちゃんと出来ていたハズです。 ROUND関数を追加する前の「今までの式」が =IF(なんたら,"",算数の式) になっているとしたら =IF(なんたら,"",ROUND(算数の式,0)) とします。
補足
何度も申し訳ありません。きちんと説明出来ていなくて。 =IF(K992="","",H992*IF(K992="a",1,IF(K992="b",0.9,IF(K992="c",0.8,IF(K992="d",0.7,IF(K992="e",0.55,IF(K992="f",0))))))) この場合、どこにROUND関数を入れたらいいのでしょうか?
- keithin
- ベストアンサー率66% (5278/7941)
たぶん方法1: L6からL992までに入れてある数式を =ROUND(今の式,0) に変更する。 方法2: エクセルのオプションの計算方法で,「表示桁数で計算する」のチェックを入れる #ご利用のエクセルのバージョンが不明なので,具体的な操作を「これを選んで」とお話しできません。ご相談投稿では,普段あなたの使うソフトのバージョンまで,キチンと明記することを覚えてください。
補足
的確なご指示、ありがとうございます。方法1のやり方に変更したところ、ピッタリ合いました。 L列の数字の入っていないところが、#VALUE!と出てしまいます。これを空白にすることは出来るでしょうか? excelは、2007と2010を使っています。 宜しくお願い致します。
- chie65536(@chie65535)
- ベストアンサー率44% (8757/19871)
>F35でF9からF34までの集計をしています =SUM(F9:G34) =SUM(F9:G34) の式は「F9~F34と、G9~G34の、52個のセルを合計」してますよ。 これが「書き間違いじゃなく、本当にそういう式が書いてある」としたら、G9~G34の合計が「-1」なのでしょう。 F9~F34の合計に、G9~G34の合計である「-1」を足せば「F9~F34の合計より1少なくなる」のは当たり前です。 >正しく計算するには どのような計算式をいれたらいいでしょうか? =SUM(F9:G34) じゃなく =SUM(F9:F34) と言う式を入れましょう。 「そう修正しても直らない」または「単なる書き間違いで、=SUM(F9:F34)になってた」と言う場合は、原因が別にあるので、F9~F34に入っている実際の数値26個を提示してもらわないと、原因は判りません。 なぜなら「式は合っているけど、表示上の問題で、1小さく表示されているだけ」とか「式は合っているけど、数値計算の誤差で1小さく表示されているだけ」など、色々な原因が考えられ、原因が特定できないからです。
補足
ありがとうございます。G34は入力間違えです。 正しくは=SUM(F9:F34)です。 F9から入っている数字を書きます。 4,200 書き損じ 6,720 14,280 2,520 10,080 8,400 2,520 4,032 29,400 30,660 11,760 6,300 3,898 6,300 10,080 6,300 35,760 1,277 33,432 14,700 80,220 5,460 26,712 15,792 9,492 です 電卓で計算すると380,295 ですが この計算式だと380,294 になってしまいます。 F10は、集計する数字がないので書き損じと入力してあります。
- aokii
- ベストアンサー率23% (5210/22062)
データに間違いが有りそうです。
お礼
ご丁寧なご回答ありがとうございました。 当初のF35は、きちんと計算が合い、商品シートの方も#VALUE!と出なくなりました。 参考意見もすごく分かりやすかったです。 これからは、情報提供も的確に出来るように頑張ります。 とても助かりました。ありがとうございました。