• ベストアンサー

SUMのオートフィルについて

別のシート「1組」にあるデータAとBを足した合計を表示したいのですが、 A1に、=SUM(1組!A4,1組!B4) A2に、=SUM(1組!A7,1組!B7) A3に、=SUM(1組!A10,1組!B10) という感じで、参照したい場所が3とびになっている為、オートフィルを使用すると上手くいきませんでした。 30件ほど続くので、手計算だと入力ミスがありそうです。 良い方法はありませんか?

  • y01ko
  • お礼率75% (9/12)

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

  • ベストアンサー
  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.5

 回答No.1です。  申し訳御座いません、回答文の内容確認と訂正を繰返した際に、関数の一部を誤って書き換えてしまっていた様で、回答No.1で提示致しましたOFFSET関数を使用した関数の一部に誤りが御座いました。 ×  =SUM(OFFSET(1組!$A$4:$B$4,(ROW(1組!$A4)-ROW(1組!$A$4))*3))       ↓ ○  =SUM(OFFSET(1組!$A$4:$B$4,(ROW(1組!$A4)-ROW(1組!$A$4))*3,)) ×  =SUM(OFFSET(1組!$A$4:$B$4,(ROWS(1組!$A$4:$A4)-1)*3))       ↓ ○  =SUM(OFFSET(1組!$A$4:$B$4,(ROWS(1組!$A$4:$A4)-1)*3,))

y01ko
質問者

お礼

早々の回答ありがとうございました。 上手くいきました。 でも色々な方法があるんですね。 今回は1番最初に返事いただいた方にベストアンサーをつけさせて頂きました。

その他の回答 (6)

  • mshr1962
  • ベストアンサー率39% (7418/18948)
回答No.7

=SUM(INDIRECT("1組!A"&ROW()*3+1&":B"&ROW()*3+1))

y01ko
質問者

お礼

回答ありがとうございました。 上手くいきました。 でも色々な方法があるんですね。 今回は1番最初に返事いただいた方にベストアンサーをつけさせて頂きました。

  • Nouble
  • ベストアンサー率18% (330/1783)
回答No.6

済みません まちがえていました 誤記 =SUMPLODUCT(OFFSET(1組!$A$1,ROW(A1)*3,0,2)) 正記 =SUMPLODUCT(OFFSET(1組!$A$1,ROW(A1)*3,0,1,2)) お詫びのうえ、訂正します

y01ko
質問者

お礼

回答ありがとうございました。 上手くいきました。 でも色々な方法があるんですね。 訂正までしていただきありがとうございます。 今回は1番最初に返事いただいた方にベストアンサーをつけさせて頂きました。

  • bunjii
  • ベストアンサー率43% (3589/8248)
回答No.4

>良い方法はありませんか? A1=SUM(1組!A4,1組!B4) は A1=SUM(1組!A4:B4) と等価です。 SUM関数の集計範囲を現在の行番号を使って指定するにはOFFSET関数またはINDIRECT関数を使えば良いと思います。 OFFSET関数の場合は次の数式で良いでしょう。 A1=SUM(OFFSET('1組'!$A$1,ROW()*3,0,1,2)) INDIRECT関数の場合は次の数式が等価になります。 A1=SUM(INDIRECT("1組!A"&(ROW()-1)*3+4&":B"&(ROW()-1)*3+4))

y01ko
質問者

お礼

早々の回答ありがとうございました。 上手くいきました。 でも色々な方法があるんですね。 今回は1番最初に返事いただいた方にベストアンサーをつけさせて頂きました。

  • Nouble
  • ベストアンサー率18% (330/1783)
回答No.3

A1に、 =SUMPLODUCT(INDIRECT("1組!A"&ROW(A1)*3+1&"B"&ROW(A1)*3+1)) =SUMPLODUCT(OFFSET(1組!$A$1,ROW(A1)*3,0,2)) =SUMPLODUCT(INDIRECT(ADDRESS(ROW(A1)*3+1,1,1,1,"1組")&":"&ADDRESS(ROW(A1)*3+1,2))) 如何でしょうか? フィルしてお使いください

  • Chiquilin
  • ベストアンサー率30% (94/306)
回答No.2

どうせ一度設定したら二度と変更しない式だと思います。 A1セルに「=SUM(1組!A4,1組!B4)」だけ入力して A1:A3セルを選択して 下方向に オートフィルコピー 後は ジャンプ機能の[セル選択]→[空白セル]で 空白セルだけ選択して 右クリック[削除] →[上方向にシフト] でいいはずです。

y01ko
質問者

お礼

早々の回答ありがとうございました。 上手くいきました。 でも色々な方法があるんですね。 今回は1番最初に返事いただいた方にベストアンサーをつけさせて頂きました。

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.1

 A1セルの関数を次の様にされた上で、A1セルをコピーしてA2以下に貼り付けると良いと思います。 =SUM(OFFSET(1組!$A$4:$B$4,(ROW(1組!$A4)-ROW(1組!$A$4))*3)) 或いは =SUM(OFFSET(1組!$A$4:$B$4,(ROWS(1組!$A$4:$A4)-1)*3)) 或いは =SUM(INDEX(1組!$A:$A,ROW(1組!$A$4)+(ROW(1組!$A4)-ROW(1組!$A$4))*3),INDEX(1組!$ B:$B,ROW(1組!$A$4)+(ROW(1組!$A4)-ROW(1組!$A$4))*3)) 或いは =SUM(INDEX(1組!$A:$A,ROW(1組!$A$4)+(ROWS(1組!$A$4:$A4)-1)*3),INDEX(1組!$ B:$B,ROW(1組!$A$4)+(ROWS(1組!$A$4:$A4)-1)*3))

関連するQ&A

  • 離れた列のオートフィル、オートSUMのコピー

    2点質問いたします。 exel2007を使用し、行数の多い縦長の表を多数作っています。 A列C列E列など離れた列でそれぞれ一定の計算を行うときに今までは個別にオートフィル機能を使って下方まで計算していました。 隣り合う列ならばまとめてオートフィルをかけていますが、ctrlボタンでの複数セル選択ではオートフィルが出来ないようで困っています。 さて、このように列が離れている場合に、それぞれの列を一括でオートフィルにかけることは可能でしょうか? 表が縦長な故、ポインタの上下を繰り返すのが手間になっています。 もう1点ですが それぞれの列の合計欄の行を設けていますがこれまでは1列をオートSUM計算し、オートフィル機能で全ての列の合計を出し、合計しない列はそのつど削除していました。 この合計欄の行が表の中で複数あるため、 合計欄自体を別で先に作成し、作成した合計欄を挿入する形にしたいと考えております。 合計する行数がまちまちのために合計する行をそのつど範囲指定できないのでオートSUM機能を使いたいです。 つきましてはセルの数式にオートSUMを予め入れる方法はありますでしょうか? 分りずらい長文で申し訳りませんがよろしくお願いいたします。

  • エクセルのオートフィルで教えてください

    sheet1のA列、B列、C列にデータが入っています。 Sheet2の表に参照でデータを入れたいと思っています。 Sheet2のB2に=Sheet1!A3 B3に=Sheet1!B3 B4に=Sheet1!C3 B5~B7は空欄にして B8に=Sheet1!A4 B9に=Sheet1!B4 B10に=Sheet1!C4 と連続して入力していきたいです。 B2~B7を選択してオートフィルを使ってみたのですが B8,B9,B10には、=Sheet1!A9、=Sheet1!B9、=Sheet1!C9が入ってしまいます。 B13まで手作業で入力して、そこからオートフィルをやってみましたが 空欄部分がカウントされてしまうのか上手くいきません。 エクセル初心者です。 よろしくお願いいたします。

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

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

  • エクセルのオートフィルってなんですか?

    セルの計算式は、SUM(A1~B1)となっているセルを、クリックして下のセルに、降ろしたら、下のセルの計算式は、SUM(A2~B2)にちゃんとなるんですけど、答えが違っちゃってます。 なんでですか? 「オートフィルオプション」ってのが表示されるんですけど、意味がわかりません。誰か助けて下さい。

  • オートフィルのことで教えてください

    オートフィルのことで教えてください。 XP、エクセル2007を使っています。 A列、B列共に漢字が入力されていて B列の上部にウィンドウ枠の固定をしています。 A.B列以外をロックし、シートの保護をしています。 A列はオートフィルできるのですが、B列には+マークが出ません、 B列もオートフィルできるようにする方法を教えてください。

  • Excelのオートフィルについて

    Excelで結合したセルにオートフィルで連続した値を入れたいのですが  (A1)と(A2)を結合して 「=Sheet2!B1」  (A3)と(A4)を結合して 「=Sheet2!B2」 と入力し  オートフィルで  (A5)と(A6)の結合に 「=Sheet2!B3」 としたいところ 「=Sheet2!B5」 になってしまいます。 うまく説明できないのですがいい方法があれば教えてください。 どうぞよろしくお願いします。

  • 【Excel】串刺し計算オートフィルの結果が不正

    Excelで、月毎に各店の売上の合計を出そうとしています。 例えば4月のブックで、A店・B店…E店の各店5つのシートと、全店の合計のシート、全部で6つのシートがあるとします。 そしてそれぞれのシートは、縦方向に日付、横方向に商品名が並ぶ表形式になっています。 ここで、各シートは行数・列数、そして配置が全く同じですので、合計のシートにその日その商品の全店の売上を、所謂串刺し計算で出すことができます。 例えばB2のセル…日付は1日、商品名はaで、 売上はA店、B店…の順に 500、600、700、800、900 となっています。 すると合計のシートのセルB2に、5店の売り上げを串刺し計算すると、 合計は3,500になると思います。 では、B3のセル、日付は2日で商品名は同じくaです。 売上は1,000、900、800、700、600です。 合計のシートのセルB3に串刺し計算すると、4,000円になる筈です。 また、C2のセル、日付は同じく1日で、商品名はbとします。 売上は300、500、700、900、1,000です。 合計のシートのセルC2に串刺し計算すると、3,400円になりますね。 でもここで、オートフィルという便利な機能があります。 合計のシートで、オートフィルを行うことによって、全店の各日・各商品毎の合計を一気に計算することができます。 串刺し計算した結果も、ちゃんと連続データで出てくる筈です。 それが…4月のブックでそれをやると、表示される計算結果が不正になるのです。 即ち、上記の例から、合計シートのセルB2から縦方向にオートフィルしても、横方向にオートフィルしても、全て3,500と表示されてしまうのです。 ただ、数式だけはちゃんとなっているのですが… 合計シートのセルB2には =SUM(A店:E店!B2) と数式が入っています。 では、B3には =SUM(A店:E店!B3) C2には =SUM(A店:E店!C2) と入っているんです。 なのに計算結果が不正になっている… 1ヶ所のセルに入っている数式をコピーして、他のセルにペーストしても、数式だけは正しいのに計算結果は正しくありません。 逆に、各セル1ヶ所1ヶ所串刺し計算すると、計算結果が正常に出てきます。 つまり数式をコピーすると不正扱いされるということです。 今、4月のブックでこの現象が起きています。 過去の月のブックでは、同じ操作を行って、計算結果は正常に出たのですが… 何故、今に限ってこうなるのでしょうか… Excel2010で、この現象が起きています。OSはWin7です。 また、問題のシートは全て、2003以前のバージョンで作るようなブック形式です。 何方か教えて頂けますでしょうか? 不足がありましたら補足します。

  • Excelのオートフィル機能について

    あるセルに別のシートからリンクしている「=項目!A1」と入力して、下の方にオートフィルすると「=項目!」以下は「A1、A2、A3…」と入力されますよね。 これを「A1、B1、C1…」という感じで数値固定でアルファベットだけをオートフィルさせたいのですがどうすればできますか?数値だけ絶対参照してもうまくいきません。いい方法がありますか?

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

    例えばあるセルに  =MMULT('Sheet1'!$A3:$OK5,$B$2:$B$402) と入力します。 この時、  A3→A7→A11  OK5→OK9→OK13 のように列の参照だけ4ずつ増加させたいのですが どうしてもできません。 途中まで手入力でやってオートフィル使えばできると思ったのですが ただの繰り返しになってしまいます。 ご教授下さい。 宜しくお願い致します。

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

    横に並んでいるセルをオートフィルで縦方向にコピーすることはできるのでしょうか? 例えばsheet1のA1~E1に横並びに計算式を設定します。 A1の結果をsheet2のA1に設定します。 するとsheet2のA1には(=Sheet1!A1)という内容がセツトされます。 これをオートフィルで下にコピーすると A2(=Sheet1!A2) A3(=Sheet1!A3) A4(=Sheet1!A4) A5(=Sheet1!A5) となってしまいますね。 これを A2(=Sheet1!B1) A3(=Sheet1!C1) A4(=Sheet1!D1) A5(=Sheet1!E1) と参照させたいのです。 オートフィルだと無理なのでしょうか? もし可能な方法をご存知の方がいましたらご指導願えれば嬉しいです。

専門家に質問してみよう