• ベストアンサー

Excelでバンチングしたい

A列にデータが入っていたとして、B列でbunchingをしたいのです。 たとえば、B1に  =sum(A1:A5) と入れてオートフィルをすると  =sum(A1:A5)  =sum(A2:A6)  =sum(A3:A7)     :     : となりますよね。これを、  =sum(A1:A5)  =sum(A6:A10)  =sum(A11:A15)     :     : というようにしたいのですが、何か上手い方法は無いでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • nishi6
  • ベストアンサー率67% (869/1280)
回答No.2

B1に =SUM(INDIRECT("A"&(ROW()-1)*5+1&":A"&(ROW()*5))) または、 =SUM(OFFSET($A$1,(ROW()-1)*5,0,5,1)) として、後は下にコピーします。

uhyohyohyo
質問者

お礼

回答ありがとうございます! こんな一発で可能とは!ですがこれはかなり高等テクニックですね。offset関数、row関数、indirect関数勉強させてもらいました。これで色々出来ることに幅が増えそうです。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

回答No.3

ShadowMoonです。 計算した結果を取り出してこれをテキストエディターに取り込むにはnishi6さん のようにするのが良いですね。(^^ゞ あと、はじめに回答した方法ですと、テキストエディターに改行がないように取り込むには、 (1)セルの結合を解除して、計算結果が入ったセルを移動しておいて、これをコピーするか、 (2)取り込んだ後で改行を削除するしかないみたいです。 なおnishi6さんのやられたような一編に計算する方法はわかりにくいようでしたら (nishi6さんずうずうしくてごめんなさいm(__)m) はじめにやったように (1)B列にSUM計算しておいて (2)C列では、参照するセルを入力 C1にはB1、C2にはB2と入力してC1とC2を範囲選択してオートフィルでC3以降に参照するセル名を入力 またはC1に="B"& (ROW()-1)*5+1と入力し、これをもとにC2以降にオートフィルでコピー (3)D列では、C列で入力したセルを参照する文字を元に計算結果を表示 D1には=INDIRECT(C1)と入力してD2以降にオートフィルでコピー とやってもいいかなと思いました。

uhyohyohyo
質問者

お礼

再びのご助言ありがとうございます! > C2にはB2と入力して 今考えている状況だとC2にはB6ですね。 どちらでも上手く出来ました。こちらの方式は書式が分かりやすかったです。

全文を見る
すると、全ての回答が全文表示されます。
回答No.1

B1:B5を選択して”セルを結合して中央揃え”のボタンをクリックします。 オートSUMボタンをクリックします。 A1:A5を範囲選択します。 オートSUMボタンをクリックします。 このあとB1のセルをオートフィルで下の行にコピーするというのはいかがでしょう。

uhyohyohyo
質問者

お礼

回答ありがとうございます! おお!出来ました。ですが、複数のセルを認識してしまっており、(テキストエディタなどに落とすと)取り出したデータに改行が入ってしまいます。改行無しで連続データにしたいのですが・・・なんとかならないでしょうか・・・

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルのオートフィルについて

    エクセルのオートフィルについて 例えば、=SUM(A1:A2) という計算式を作ってオートフィルしますと、 次のセルには、=SUM(A2:A3) となってしまいます。 それを、 =SUM(A3:A4) =SUM(A5:A6) となるように、オートフィルすることは出来ますでしょうか?

  • Excel オートフィルでセル番号を上方にしたい

    Excel2007です。 B2に =SUM($A$2:A10) B3に =SUM($A$2:A9) B4に =SUM($A$2:A8) と下方にオートフィルした時に範囲を 狭めたいのですがその方法を教えて下さい

  • エクセル シートのオ-トフィル

    自作でエクセルで家計簿をつけていて シートごとに「7月」「8月」としています。 それで集計のページを作ったのですが 仮にシートのA列に金額がいっぱい入力されていて 集計のシートで 「=SUM('7月'!A:A)」としてそれを右にオートフィルしたときに 「=SUM('8月'!A:A)」としたいのですが 「=SUM('7月'!B:B)」 となってしまいます。 回避する方法はないのでしょうか? ひとつひとつ手入力するしかないのでしょうか? よろしくお願いします。

  • エクセルにてSUMの()内の前方値を固定してフィルハンドルを使って計算する方法について

    エクセル作業で困っていることがあります。 フィルハンドルを使って以下の計算をC列上に表示してもらいたいのですが、よくわかりません。 =SUM(A2:B2) =SUM(A2:B3) =SUM(A2:B4) =SUM(A2:B5)   ↓   ↓   ↓ フィルハンドルを使わなくてもいいので、何かよい方法があればご教授願えませんでしょうか? よろしくお願いします

  • このようなデータ処理はエクセルの関数組み合わせやオートフィルなどで可能でしょうか

    エクセルでのデータ処理に関する質問です。 ・処理する元データ ヨコ10列(A列からJ列まで)、タテ20個の数値データ ・行いたい処理 (1)それぞれの二つの列(たとえばA列とB列)の同じ行の数値データをそれぞれ三乗して足す。そのあと、足したものを合計する。 (2)すべての組み合わせについて計算する。(つまり、A列-A列、A列-B列、A列-C列、……、B列-A列、B列-B列、B列-C列、……、I列-J列、J列-J列の組み合わせ) (3)これら算出した数値を横一列(1×100)にする。 最終目標は(3)です。(1)は単純なオートフィルでなんとかなるのですが、(2)は、合計する範囲を毎回指定しなおさなくてはいけないために大変面倒です。 このような形式のデータがたくさんあるために、できるだけ手間を省きたいのですが、どうしたらいいかわかりません。オートフィルをうまく組み合わせればできるような気もしますが、どうもできません。10個計算したら次に移ってくれるようなオートフィルがあればいいのに、とか、不可能なことばかり考えてしまいます。うまくやれば、横向きに100個のセルをオートフィルで、つまんで引っ張るだけでできるような気もしますが、できません。 ご存知の方にとっては簡単なことかもしれませんが、うまくいかず、ムズムズしております。どうか、どなたかお教えいただけないでしょうか。

  • ExcelのCOUNTIFで条件の値に1を足す方法

    ExcelのCOUNTIFを使って集計をしています。 「Log」とういうシートのデータを固定で範囲指定(オートフィルで範囲が変わってしまうため)し、その中に「Sheet1」のA列のデータ(文字列:氏名)といくつ合致しているかを集計しようとしています。 =COUNTIF(Log!$B$7:$B$510,"*A1*") 上記数式をG1に入力しオートフィルでコピーしてもコピー先の数式は何も変わりませんでした。 =COUNTIF(Log!$B$7:$B$510,"*A2*")と手入力し再度コピーすると ・・・"*A1*"、・・・"*A2*"、・・・"*A1*"、・・・"*A2*"となるだけでした。 どうすればオートフィルでA1,A2,A3…となってくれるでしょうか? もし他の(簡単な)方法があれば教えていただければ幸いです。 使用ソフト:Excel2002 よろしくお願いいたします。

  • エクセル オートフィルについて

    エクセル オートフィルについて A列 B列 C列 1   2  =A2+B2 上記のように、エクセル表のC列の2行目に数式が入っています。 この数式を連続オートフィルで下にスクロールしたいのですが、 C列の3000行まで簡易な方法で連続にしたいのです。 初心者で申し訳ないのですが、やり方を教えていただければ嬉しいです。 バージョンはエクセル20007です。

  • オートフィルの自動化について

    EXCELでB4からB列に値がある分、A列にオートフィルを実行 させたいのですが、 Selection.AutoFill Destinationで明確に記載すれば できるのですが、何か他に方法はありませんでしょうか。 A4 B4 1 データ    データ    データ 上記でA5以降マクロでオートフィルを実行させる処理を やりたいのですが.. 知ってる方いましたら教えてください

  • EXCEL2007マクロ/オートフィルについて

    VBA初心者です。 EXCEL2007でオートフィルのマクロを作ったのですが、下記のケースで困っています。 A列のデータが入っている行までB列のデータをオートフィルで入力したく、 A列の最終行からデータが入っている行までを求めてB列のデータをオートフィルで入れるため、下記のマクロを設定しました。 Sub test()   Range("B1").AutoFill Destination:=Range("B1", Range("A1048576").End(xlUp).Offset(, 1)) End Sub ところが、A列のデータが2行以上ある場合はうまくいくのですが、一行のみだった場合オートフィルができなくてマクロがとまってしまいます。 一行なので当然なのですが、このような処理をしたい場合、他に方法はないものでしょうか? お知恵を拝借できますと大変助かります。 どうぞよろしくお願いいたします。

  • エクセル 生年月日 誕生月

    A列に生年月日のデータが入っていて、B列に誕生月を表示させるために =MONTH(A1) と入力して、オートフィルをやったのですが、単位がつきません B列に4ではなく4月と入れたいです セルの書式設定で単位をつけることが出来たのですが、COUNTIFで4月の数を数えても0になってしまいます 何か良い方法はありませんか?

専門家に質問してみよう