• ベストアンサー

エクセル 参照データのコピー(入出金管理)について

エクセルの使い方を、お教え下さい。 100人の方の入出金管理をしています。 1.エクセルで一ヶ月ごと個人別に、入出金を入出金内訳・入金合計・出金合計・先月残金・今月残金などとして、Sheet1に100人分作っています。(印刷すれば、100人分100枚出てきます。) 2.Sheet2に100人の各合計・残金のみを一覧として作り、そのデータはSheet1を参照しています。(これを印刷すると、5・6枚です。) 問題は、このSheet1とSheet2を4月分の1ヶ月として、5月分をコピーして作成しようとした時、コピーしたSheet2(2)がSheet1(2)を参照せず、Sheet1のデータを参照してしまう事です。 これを解決する方法は無いでしょう?

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

  • ベストアンサー
  • hana-hana3
  • ベストアンサー率31% (4940/15541)
回答No.1

組みになったシート(sheet1/sheet2)をコントロールキーを押しながら選択(作業グループ)してコピーします。

sun_mars
質問者

お礼

こんなに早くお教えいただき、たいへん参考になりました。ありがとうございました。

その他の回答 (1)

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.2

INDIRECT関数を利用すれば任意のシート名を参照できるようにできます。INDIRECT関数は参照先を文字列で指定できます。ということはセルの値を文字列に組み込めば、関数を直さなくてもセルの値を変更するだけで参照先を変更できるのです。 例えばSheet2のA1セルに「Sheet1(2)」のように参照したいシート名を入力します。 Sheet2には元々 =VLOOKUP(A3,Sheet1!A:D,4,0) =SUMIF(Sheet1!A:A,"合計",Sheet1!D:D) のような関数が入力されていることと思います(式は適当に書きました) これを =VLOOKUP(A3,INDIRECT($A$1$ & "!A:D"),4,0) =SUMIF(INDIRECT($A$1$ & "!A:A"),"合計",INDIRECT($A$1$ & "!D:D")) のように変更します。 おそらくSheet2にはたくさんの関数式が入力されているでしょうから、これをINDIRECT関数に書き換えるのは大変だと思います。でも一度書き換えてしまえば来月からは楽になると思いますよ

sun_mars
質問者

お礼

こんな方法があるのですね。たいへん参考になりました。ありがとうございました。

関連するQ&A