- ベストアンサー
エクセルで集計
エクセルでの合計について教えていただきたいのです。 A1~A10000まで日付が、B1~B10000まで数値が入力されています。 B列の数値を50行ごとに合計し、C列に表示する方法。 現在は、sum関数で手作業です。 簡単に表示できる方法を教えてください。 また、C列に合計のある行をD列(D1・D2・D3・・・)、E列(E1・E2・E3・・・)、F列(F1・F2・F3・・・)に並べたいのです。(50行ごとに間引いて表示するような感じです) 現在は、=C50・=C100・=C150のように手作業です。 もっと多量のデータが入力されたシートもあります。また、100行ごと150行ごとなど合計行が違う場合もあります。 エクセル初心者です。 よろしくお願いいたします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
A1~A10000まで日付が、B1~B10000まで数値が入力されている状態で、C50セルに =IF(MOD(ROW(),50)=0,SUM(B1:B50),"") と入力します。 C50セルを選択した状態でC50セルの右下の角(D51セルとの接点)にカーソルを当てます。 カーソルが+のような表示になったらダブルクリックしてください。 これでB列の数値を50行ごとに合計し、C列に表示されました。 > C列に合計のある行をD列(D1・D2・D3・・・)、E列(E1・E2・E3・・・)、F列(F1・F2・F3・・・)に並べたいのです DにA列、EにB列ということでしょうか? それなら D1に、=INDIRECT("A"&ROW()*50) E1に、=INDIRECT("B"&ROW()*50) F1に、=INDIRECT("C"&ROW()*50) と入力して、必要なところまで下へ引っ張って式をコピーしてみてください。 > また、100行ごと150行ごとなど合計行が違う場合もあります。 上記の回答の50を必要な行数に変えてみてください。
その他の回答 (2)
D列に、 =IF(MOD(ROW(),50)=0,SUM(OFFSET(C1,-49,0,50,1)),0) として、表示書式を「#,###;-#,###;」そして下にコピー。 また、 > E1にA50、B50、D50 > E2にA100、B100、D100 とありますが、 E1にA50、F1にB50、G1にD50 E2にA1000、F2にB100、G2にD100 という意味ですか? 失礼ながら、質問が二転三転しているので、正確な情報を補足してください。
お礼
ご回答いただきましてありがとうございました。 あとは関数のヘルプを見ながら何とかできそうです。 質問が不適切なことからお気を使わせてしまいました。 ほんとうにありがとうございました。
補足
ご回答ありがとうございます。 質問が不正確です。お許し下さい。 E1にA50、F1にB50、G1にD50。 ・ ・ ご指摘の通りです。 なお、入力し、書式を変更しましたところD列はうまくいきました。 よろしくお願いいたします。
セル D1 に式 =SUM(OFFSET(A$1,(ROW(A1)-1)*50,1,50)) を入力して、此れを下方にズズーッとドラッグ&コピーすると、B列を50行ずつ合計した値が表示されますが・・・ 上式の 50 を 100、150 に変更すれば、100行ずつ、150行ずつになる次第。
お礼
深夜にご回答をいただきまして申し訳ありませんでした。 あとはヘルプを確認し、なんとかできそうです。 本当にありがとうございました。
補足
すみません。質問が間違っていました。 もう1列入列行がありました。 A列=日付、B列=数値、C列=数値が入力済みです。 希望する結果だけ申し上げます。 D50にsum(C1:C50)、D100にsum(C51:100)、・・・ E1にA50、B50、D50 E2にA100、B100、D100 ・ ・ です。 できましたら、再度ご回答よろしくお願い申し上げます。
お礼
貴重なお時間を頂きました。 関数内容をヘルプ等で確認できました。 後はなんとかできそうです。 質問が不適切で申し訳ありませんでした。 ほんとうにありがとうございました。
補足
ご回答いただきありがとうございます。 すみません。もう1列ありました。 A列=日付、B列=数値、C列=数値と3列ありました。 集計したい列は、C列です。 誠に申し訳ありません。 できましたら3列で、もう1度よろしくお願いいたします。