- ベストアンサー
エクセルで下の行から合計とかを求めたいです。
ほぼ毎日最終行の所にA列に日付 B/C/D/列に数値を加えているという作業を繰り返しています。従って下の方が最近入力した値になっている状態です。 私がしたいのはこの最近入力した(最終行)行から5行上までの各列の合計や平均値をそれぞれ1番上の方に自動で表示したいのですがいろいろと調べても分かりません。(行を追加するたび範囲を指定し直すというのがつらいです。) このような事はエクセル2003で可能でしょうか? 調べた中では最終行を取得するとか最終行の値を表示するというのは見つけれたのですがここ何日も悩んで解決できません。 よろしくお願いします。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
#1 Cupperです。 失礼しました。最新のデータ5つ分の合計でしたね。 =SUM(OFFSET(B2,COUNTA(B2:B65536)-5,0,5,1)) これでどうでしょう。 B列に入力されているデータの個数をcounta関数で数えて、offset関数で最大行から上5セル分を範囲として設定しています。
その他の回答 (4)
- Wendy02
- ベストアンサー率57% (3570/6232)
こんにちは。 > 調べた中では最終行を取得するとか最終行の値を表示するというのは見つけれたのですが・・・・ 数値の最終セルの行を出す式は、「MATCH(10^15,B:B,1)」で行いますと、以下のようにすればよいと思います。 B列の最終行から5行 =SUM(OFFSET($B$1,MATCH(10^15,B:B,1)-1,,-5))
- maron--5
- ベストアンサー率36% (321/877)
◆B2から数値が連続して、入力されているものとして =SUM(OFFSET(B2,COUNT(B3:B100),,-5)) または、 =SUM(INDEX(B2:B100,COUNT(B2:B100)-4):INDEX(B2:B100,COUNT(B2:B100)))
こんにちは。 数値の入力がとぎれていない(空白がない)のであれば 例えばB列の合計の場合 =SUM(INDIRECT("B"&COUNTA(B:B)&":B"&COUNTA(B:B)-4)) この様にすれば出来ます。
お礼
ありがとうございました。勉強させていただきます。
- Cupper
- ベストアンサー率32% (2123/6444)
いろいろな関数を組み合わせて使う方法もありますが、 はじめから最大範囲を設定してしまえばいいと思います。 Excel2003までであれば最大行数は65536行ですので =SUM(B2:B65536) としてはいかがですか。 これはB2セルからB65536セルまでの合計を求めます。 B2セルからではなくB3セルからであれば =SUM(B3:B65536) と直すなどしてください。
お礼
ありがとうございます。早速の回答ありがとうざいました。何日も悩んでいた事が一発で解決する事ができました。