• ベストアンサー

【エクセル】シート一括計算について

AとB2つのファイルがあり、それぞれに同じ形式で数値が入力されています。 もう1つ同じ形式のファイルCを作り、各セル・シートごとにA+Bの数値をCに表示したいです。 ただし、100シート近くあるため、1シートずつ計算式を設定していくと 膨大な時間がかかるので、作業グループで処理したいと思いましたが、 作業グループではシートまでは自動選択できませんでした。 効率よく計算する方法はありませんでしょうか。 バージョンは2010です。 どうぞよろしくお願いいたします。

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

  • ベストアンサー
  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.1

以下の様な手順でいかがでしょう。 操作はExcel2003で書いていますが、大きくは違わないはずです。 1.ブックA、ブックB、ブックCを開いておきます。 2.ブックAの全シートを選択して、[Ctrl]+[A]で全選択してコピー。 3.ブックCの先頭シートのA1を選択して右クリックメニューから「形式を選択して貼り付け」で、貼り付け:値 で、<OK> 4.次にブックBを全シートを選択して、[Ctrl]+[A]で全選択してコピー。 5.ブックCの先頭シートのA1を選択して右クリックメニューから「形式を選択して貼り付け」で、貼り付け:値、演算:加算 で、<OK>

harukanasanon
質問者

お礼

形式を選択して貼り付けは盲点でした! ブックAをコピーして、ブックBを加算で貼り付けたら一発でした! ありがとうございました。

その他の回答 (2)

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.3

訂正と補足です。 集計用ブックの各シートのK1セルに入力する数式を提示していませんでした。 シート名を取得する関数は以下のようになります。 =RIGHT(CELL("filename",K1),LEN(CELL("filename",K1))-FIND("]",CELL("filename",K1))) ただし、集計用ブックは名前を付けて保存している必要があります。 また、ブック名によっては、シート名部分までを「’」で囲まないと正しく表示できない場合もあります。 実際に他ブックのセルを参照する数式を入力してみて、どのような数式になるか調べて、適宜INDIRECT関数の数式を訂正してみてください。

harukanasanon
質問者

お礼

ありがとうございました。

  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.2

例えば、ブックCの各シートの名前がブックAとBのシート名と同じで、同じ位置のセルの集計をしたいなら以下のような数式で表示できます。 まずブックCを作業グループにして、空白セル(例えばK1セル)に以下の数式を入力します同じ数式を入力して、各シートのシート名を取得しておきます。 次に、作業グループで集計セルに以下の式を入力して、必要範囲をオートフィルコピーします(dpのシートのどのセルにも同じ数式で対応できます)。 =INDIRECT("[ブックA.xls]"&$K$1&"!"&ADDRESS(ROW(),COLUMN()))+INDIRECT("[ブックB.xls]"&$K$1&"!"&ADDRESS(ROW(),COLUMN())) ただし、INDIRECT関数は、参照するブックAとブックBを両方開いておかないと計算できませんので注意してください。

harukanasanon
質問者

お礼

今回はブック毎にシート名が異なるので、この方法は使えませんが、非常に参考になります。 ありがとうございました。

関連するQ&A