• ベストアンサー

excelでシート間の数式コピーについて

検索しましたが見当たらないので質問させて下さいませ。 excelでシート間の数式コピーについて教えて下さい。 シート1に計算式を入れて表作成をし、シートの挿入にて複製しシート2,3,4……とした場合、各シート前のシートの同じ位置に有るセルの計算式を参照したいのですがどうすれば良いのでしょうか? 初歩的な質問でお恥ずかしいのですが本にも載っていなくて困っております。 どうか宜しくお願い致します。

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

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.4

#2です補足を見ました。 >A1:j50の部分をA2とかA3とかと手直ししていたのでそれを関数でやれば自動で出来るのかなと・・ シートのコピーで次の期間のシートを作っているのでしょうが、 明細行などは多分範囲が変わらなくて、手直しは必要ないでしょう。 ただ繰り越し残も決まった行に設定(設計)すれば手直しは必要ないと思います。もう少し具体的に、実例を挙げて、次月になると手直しが必要なセルと内容を補足説明してみてください。 ーー 他シートのデータは =シート名!番地で取りますが、シート名の部分を複写で変化させることは、難しいです。 =10月!A2をコピーして貼り付けて=11月!A2にするのは難しいです。 Sheet2のA1に「Sheet1」と文字列を入れるとして =INDIRECT(A1&"!A2") で=Sheet1!A2のデータが取れます。 A1の文字列は変える必要があるが、式そのものはコピー貼り付けても 張り付け先で変えなくても良い。 考えて見てください。

ponpuu
質問者

お礼

imogasi様 解かり易い説明をして頂き本当にありがとうございました。 =INDIRECT(A1&"!A2")を試してみたいと思います。 excelは会社で使用しているのですが関数なども何種類かの決った物しか使わない為 INDIRECTは知りませんでした。勉強不足ですね(^_^;)

その他の回答 (3)

noname#176215
noname#176215
回答No.3

状況説明が不足しています。 まず最も困ったことに OSと Excelのバージョンが明記されていません。 これでは手段を提示しようがありません。 で先に云ってしまいますが「前のシート名」を取得する手段は一般機能 にはありません。VBAかマクロ関数ならできます。 一般機能で無理して取得できるのは 「数式を入力しているシート名」と「アクティブなシート名」のふたつ です。 もしシート名が連番になっているのなら「数式を入力しているシート名」 から 必要部分だけを抽出し ひとつ前のシート名はこれだと当たりをつ けることができます。それを INDIRECT関数でセル範囲に戻してやれば 「ひとつ前のシートの指定セル」を参照できます。 ・シート名が連番になっているか が必要な情報で そうなっていないなら VBAでやるのがいいと思います。 > 初歩的な質問でお恥ずかしいのですが 質問する側の人が「初歩的な質問」などと云うべきではないと思います。

ponpuu
質問者

お礼

> 初歩的な質問でお恥ずかしいのですが 質問する側の人が「初歩的な質問」などと云うべきではないと思います。 初歩的な質問では無かったのですね。だから本にも載っていなかったのですね。それさえも解からないとは… とても丁寧にお答え頂きありがとうございました。

ponpuu
質問者

補足

ご回答ありがとうございます。 >まず最も困ったことに OSと Excelのバージョンが明記されていません。 本当にその通りです(ToT)/申し訳有りません。 XP・excel2002です。

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.2

難しいことなのか、易しいことなのか、質問の主旨がわからない。 >シートの挿入にて複製しシート2,3,4……とした場合 シートの挿入ということは、いわば白紙のシートを作ったということですか。であれば表の見出し・罫線・データ・関数式など、(この段階では)一切シート1と関係ありませんわね。 そこにシート1のA1セルの「値」(値だけですよ。書式はもって来れない)をもって来たければ、=シート1!A1と式を入れればよい。これなぞ質問にもならないことなのだが。 それより、こんなセルが多いなら、シートのコピーというのがあるが知っていますか。 初歩的な方はシート1の(例えば)A1:j50をコピーし、シート2に 貼り付けているかも知れない。 シート2で式の複写ができるとはいえ、いちいちセルの参照式を入れるのは面倒です。極く一部のセルだけのことですか。それなら質問にそう書けば、実際良くあるので、読者は納得する。

ponpuu
質問者

お礼

ご回答ありがとうございました。 すみません。初めから間違っておりました(ToT) 仰る通りコピーでしておりました。 シート1を雛形としてコピーで2・3・・・を作り中の数値だけを変えて使用しております。 その際、シート2は1の残を前期残としてシート3は2の残を・・・と言った具合で いつもA1:j50の部分をA2とかA3とかと手直ししていたのでそれを関数でやれば自動で出来るのかなと思った次第です。 説明不足で申し訳有りません。

  • pbforce
  • ベストアンサー率22% (379/1719)
回答No.1

シートの挿入ではなく、シートの移動又はコピーでコピーを選んでください。 ご質問の内容に近い動作が可能です。

ponpuu
質問者

お礼

早々にご回答頂きましてありがとうございます。 なんとお恥ずかしい・・・ シートの挿入(白紙)では無くコピーでした。 なのでシート2にはシート1と同じ物です。 変な言い回しをしてすみません。

関連するQ&A

  • 【Excel】数式を他シートへコピー

    シート1の「=$A$5 + $B$5」という数式のセルをシート2にコピーするとき, 自動的に「=heet1!$A$5 + sheet1!$B$5」と,シート名が挿入される方法はありますか? 数式をコピーしつつ,コピー元のシートを参照させたいのです。 現在シート1に参照データのセルと計算式のセルを用意しているのですが, 計算式のセルのみをシート2に移したいためです。 1つ2つなら手作業,もしくは置換でシート名を挿入するのですが,大量の計算セルを別シートに 移す必要があるため,質問させていただきました。 よろしくお願い致します。

  • エクセルの数式のコピーについて質問です、

    作成した表計算を別のブック(シート)にコピーしたのですが、数式はコピーされずにそのままコピー元の数字がコピーされてしまいます、今までは数式も一緒にコピーされていたように思うのですが何か知らずに設定を変えてしまったのでは?と困っています、使用してるのはエクセル2002です、よろしくお願いします。

  • エクセル内の数式を反映させながらシートをコピーする方法

    エクセルのシートのコピーについて教えて下さい。 1日1シートで表計算できる表を作るよう指示されました。 シート内には、累計を出すように(前日までの合計)+(本日の数字) の数式が入っています。 具体的に書きますと、セルA1に本日の数字を入力。 セルB1に(前日までの合計)+(本日の数字)と数式を入れました。 数式でいうと、例えばシート3のセルB1には(シート2:B1)+A1 シート4のセルB1には(シート3:B1)+A1 という具合にセルB1には前日までの合計を反映させるように、常に 前シートの累計をリンクさせています。 シートをコピーしては、セルB1の数式「前シート」部分を修正して こつこつシート7まで作ったのですが、30日分作って欲しいと 言われて困っています。 時間がたくさんあればこつこつ続けて完成させるのですが、就業上の 問題があってこれにずっと時間を割くことができません。 説明が長くなりましたが、ここで教えて頂きたいのです! 数式を反映させながら、シートをどんどんコピーする方法は ありませんでしょうか? 今、シート7まで作ったので、まんまコピーして7枚ずつ増やす 事は簡単ですが、累計部分の(前シート:B1)シートのリンクが 勝手には直ってくれません。 コピーすると同時に、前シートのリンクも直ってくれる方法が あればぜひ教えて下さい。 よろしくお願いします。

  • エクセルのシートコピーした際に数式を月移動したい(?)

    エクセルで月ごとに日計表・試算表を作っています。今回一から作成しようとしているので困っていることがあります。 たとえば一つのファイルに1月から12月のシートがあるのですが、2月のシートをコピーして3月のシートを作成します。2月には1月のシートを参照しているので、2月の数式は ='1月日計'!AI24 となっています。2月をコピーしたらこのままの数式をコピーしてしまいます。3月にはコピーしたら自動的に ='2月日計'!AI24 となって欲しいのですが、どのようにしたらいいのでしょうか?現在手打ちで全てを変えている状況です。非常に時間がかかり困っています。 OSはXPでエクセルは2003です。宜しくお願いします。

  • エクセル、シートコピーで、数式・リンクを削除したい

    W98 エクセル2000です。複数のエクセル・ファイルで、資料を作成しています。 それらには、多数の関数や、シート参照があり、最終的に、ひとつのシートを印刷することで、完成した資料になっています。 その複数のファイルの中より、印刷用の完成シートのみを、ひとつのエクセルファイルにまとめ(シートは複数に分かれて可)、メールにて配布したいです。印刷設定などを含ませながら、かつ、数式だけを削除し、値のみを、コピーしたいのです。 普通に考えて、まず、シートをコピーし、罫線のみを残して、削除。その後、コピー元より、値のみをコピーしようとすると、”この操作には、同じセルの結合が必要です”と、拒否されます。 どのようにしましたら、数式やリンクを削除した別ファイルが、作成できますのでしょうか? お手数ですが、よろしくお願い申し上げます。

  • Excel 2003で数式計算不能となります

    Excel 2003で同種の複数の表を作成してますが、特定の1表だけ下記のエラーが出て計算不能となります。 全てのセルを空白にしてもエラーが出てしまいます。 別のワークシートにシート単位のコピーをするとトラブルもコピーされてしまいます。 シ-ト全体を空白にしてもエラーが出ます。 対策も表示されますが処理が面倒で解決出来ません。 何かよい方法ないでしょうか。 ******************************************************************************************** (エラーの内容) 数式を計算できません。数式のセル参照は計算結果を参照 (循環参照) しています。次のいずれかを実行してください。 ? 循環参照を解決する場合は [OK] をクリックします。[循環参照] ツールが表示されるので、ツールを使用して数式を修正します。 ? 循環参照の詳細については、[ヘルプ] ボタンをクリックします。 ? 数式をそのまま使用する場合は、[キャンセル] をクリックします。

  • エクセルの数式のみ保護し、他の作業はできるようにし

    顧客管理の表があります。 次回の予定日を自動で計算する為の数式を入れたセル(列)があります。 数式の保護をするのは「シートの保護」でできるのは知っているのですが、今回のこの表は管理しやすいようにあいうえお順で作成しているので、新たな顧客が増えた場合は表の途中に行を挿入して追加しています。 「シートの保護」をした場合、ただ行を挿入することはできるのですが、そうすると数式が入っているはずのセルに数式が入っていません。 できれば、顧客情報の入っていない(数式だけは入ってる)行を切り取り(コピー)してからの挿入ができ、なおかつ数式も保護したいのですが、この場合はどのようにすればよいでしょうか。 宜しくお願いします。

  • シート名だけを変えてコピーしたい

    Excel 2003を使用しています。 添付画像は、一時的に数式を表示するようにしています(どのセルに今どのような計算式が入っているか)。 Sheet6 の セルB2からセルF2迄、データ1の値を参照する計算式が入っていますが、 これを、3行目から6行目まで、シート名の違う、計算式をコピーしたいのですが、 どのようにすれば良いでしょうか? 縦にコピーした後、参照式のシート名と行番号を変更しています。 例えば、セルB2をセルB3にコピーしたら、セルB3の参照式は データ1!A2となっています。 これをデータ2!A1としたいのです。 実際に計算式の入っているシートは、もっと沢山の参照式が入っているので元の計算式の方法を 変更は難しいです。

  • エクセルでコピーしたときに

    自分で作成したエクセルの資料を誰かに販売したときにコピーや複製出来なくするにはどうしたらいいでしょうか?(例えばセルの数式がコピーされないようにしたりなど)

  • エクセルのシートを超えた数式コピー(?)

    給与をエクセルにて管理してます。 4月~3月までのシートをそれぞれ作成してます。別のシートに集計として個人の集計が出るようにしようと思います。 そこで質問ですが、Aさんの4月の数式は ='4月'!$F$6 です。この数式を元に5月~3月まで集計を取りたいのですが、上記の数式をコピーしたら='4月'!$F$6になっていまいます。ではなく ='5月'!$F$6 ='6月'!$F$6 のように自動的に連続して数式を作成したいのです。現在は、手打ちにて月変更してます。 説明が分かりにくいかもしれませんが、宜しくお願いします。 OSはXPで、エクセルは2003です。

専門家に質問してみよう