
エクセルのシートのコピーについて教えて下さい。
1日1シートで表計算できる表を作るよう指示されました。
シート内には、累計を出すように(前日までの合計)+(本日の数字)
の数式が入っています。
具体的に書きますと、セルA1に本日の数字を入力。
セルB1に(前日までの合計)+(本日の数字)と数式を入れました。
数式でいうと、例えばシート3のセルB1には(シート2:B1)+A1
シート4のセルB1には(シート3:B1)+A1
という具合にセルB1には前日までの合計を反映させるように、常に
前シートの累計をリンクさせています。
シートをコピーしては、セルB1の数式「前シート」部分を修正して
こつこつシート7まで作ったのですが、30日分作って欲しいと
言われて困っています。
時間がたくさんあればこつこつ続けて完成させるのですが、就業上の
問題があってこれにずっと時間を割くことができません。
説明が長くなりましたが、ここで教えて頂きたいのです!
数式を反映させながら、シートをどんどんコピーする方法は
ありませんでしょうか?
今、シート7まで作ったので、まんまコピーして7枚ずつ増やす
事は簡単ですが、累計部分の(前シート:B1)シートのリンクが
勝手には直ってくれません。
コピーすると同時に、前シートのリンクも直ってくれる方法が
あればぜひ教えて下さい。
よろしくお願いします。
A 回答 (3件)
- 最新から表示
- 回答順に表示
No.3
- 回答日時:
完全にはVBAプログラムを作って
A.シートの追加
B。シート名の修正
C。前月残を参照しているセルの式の(シート名部分の)修正
が必要です。
質問者にはVBA(俗に言うマクロ)の経験なく、無理でしょう。
ですから一応、質問者には不可能です。
ーーー
ただし、
Aはシートのコピーという人手労力でする覚悟はついているでしょう。
Bもシート名の修正という人手労力でする覚悟はついているでしょう。
(シート名は関数では変えられないので、関数ではどうしようもない。)自動で連番的に振るなんて、VBAで無いと出来ない。
ーー
Cについては下記のような便法があります。
例で説明します。
Sheet1 内容は4月分 B16 今月残高がある
Sheet2 内容は5月分 A1に5と入れて、書式ユーザー定義で#月分で5
月分と見せる。A1セルの値は数字とする。
B2の式 =INDIRECT((A1-1)& "月!B16")
これでSheet1のB16の数字を取ってくる。
Sheet2をコピーし、6月分をつくり、 B2を見ると
=INDIRECT((A1-1)& "月!B16")
A1セルに6 を入れる(注)と、Sheet2 (内容は5月分)のB16の数字が出る。(これは手修正しないとどうしようもない)
ーー
これでも他シートの参照が多い場合は間違いが少なく手軽。
ただし式の組み方に気をつける必要が有るが。
本当は年月などの数字を、シートのA1とB1には、入れるべきで、そうすると式が複雑化する。1月で12月の参照も式が複雑化する。
よいこと尽くめではないが、ことほどさように難しいということ。
ご回答ありがとうございました。
お察しの通り、マクロは使えません。
セルのコピーをするように(シフトキーとドラッグでササーっと)
シートもコピーが出来るなら、その方法が知りたいと思い質問
させて頂きました。
やはり、簡単にはいかないとわかりました。
人手労力でする覚悟ができました。
コツコツやりたいと思います。
アドバイスありがとうございました。
No.2
- 回答日時:
マクロしか思いつかないので、マクロで
シート名の指定が無いので「sheet」+「連番」としました
Sheetを「sheet1」以外すべて削除し、マクロを実行してください
Sub Macro1()
Dim i As Integer
Sheets("Sheet1").Select
For i = 2 To 30
Sheets.Add(After:=Worksheets(Worksheets.Count)).Name = "Sheet" & i
With Worksheets("sheet" & i)
.Range("B1").Formula = "=Sheet" & i - 1 & "!b1+a1"
End With
Next i
End Sub
試してみて
ご回答ありがとうございました。
いろいろ書いて頂いたのですが、私はマクロが使えません。
似たような質問はないかと検索した際も、マクロの数式(?)
をよく見かけましたが、これを使うには勉強の時間が必要です。
その間にコツコツ作成したら出来そうな気がしますので、
今回は地道に作成したいと思います。
また、似たような指示を受けた際に活用できるように、勉強
しておきたいと思います。
アドバイスありがとうございました。
No.1
- 回答日時:
30シート程度ならば、コツコツ作成した方が早いと思いますが如何でしょうか。
(1)先ずは30シートを作成、先頭シート除く残り全シートを選択(2番目シートタブをクリック後、最終シートタブをshiftキーを押しながらクリックし、シートのB1に「シート名!B1」と入力
(2)シートを選択を解除(選択されているシートタブ上で右クリック→作業グループを解除)
(3)各シートのB1のシート名を変更
ご回答ありがとうございました。
難しいことはできませんので、コツコツ作成するのが
早いし確実だとわかりました。
アドバイスありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 複数セルデータを別シートの単一セルにコピーしたい。(詳細をご参照ください) 1 2022/12/14 15:08
- Excel(エクセル) シート参照を含む数式を連続コピー 3 2022/12/10 11:42
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 3 2023/02/28 01:13
- Visual Basic(VBA) Excel VBA 最終行を取得しVlookup関数をコピーする方法をコーディングで教えてください。 3 2023/05/11 13:14
- Excel(エクセル) エクセル関数について 2 2022/04/13 18:25
- Excel(エクセル) ユーザー定義について質問です。 2 2023/06/28 13:21
- Excel(エクセル) Excel シート複数 金額日計表と日付 簡単にシートコピーしたら前日の残高と日付を変更させたい 1 2022/07/15 22:10
- Visual Basic(VBA) VBAマクロでシートコピーした新シートにコピー元シートとの計算式の入れ方を教えて下さい。 5 2022/11/20 09:48
- Excel(エクセル) 前の(左隣の)シートを連続参照するように、あとから変更したい 1 2023/02/22 00:51
- Excel(エクセル) Excel関数について質問です。 シート1に入力シートがあります。 =A1 =B1などで離れた数字な 5 2022/12/18 13:42
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
前の(左隣の)シートを連続参...
-
エクセルの複数シートの保護を...
-
別シート参照のセルをシート毎...
-
エクセルでファイルを開いたと...
-
エクセル 計算式も入っていない...
-
特定のセルだけ結果がおかしい...
-
Excelで金銭出納帳。繰越残高を...
-
VBAでシートコピー後、シート名...
-
エクセルで「ウィンドウを元の...
-
Excel、同じフォルダ内のExcel...
-
EXCEL:同じセルへどんどん足し...
-
特定のシートの削除を禁止した...
-
エクセルで複数設定したハイパーリンク先...
-
エクセルで前シートを参照して...
-
Excelのシートを、まとめて表示...
-
シートの保護のあとセルの列、...
-
EXCELで同一フォーマットのシー...
-
EXCELのシートをまたぐ場合
-
エクセルで毎回1枚目のシートを...
-
エクセルで、売り上げの日計と...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
特定のセルだけ結果がおかしい...
-
エクセルの複数シートの保護を...
-
前の(左隣の)シートを連続参...
-
別シート参照のセルをシート毎...
-
エクセルで前シートを参照して...
-
Excel、同じフォルダ内のExcel...
-
特定のシートの削除を禁止した...
-
EXCEL:同じセルへどんどん足し...
-
エクセル 計算式も入っていない...
-
Excelで金銭出納帳。繰越残高を...
-
複数シートの特定の位置に連番...
-
エクセルでファイルを開いたと...
-
シートの保護のあとセルの列、...
-
Accessのスプレッドシートエク...
-
VBAで条件によりフォントサイズ...
-
VBAでシートコピー後、シート名...
-
エクセルで前のシートを連続参...
-
エクセルVBAでパスの¥マークに...
-
EXCELで同一フォーマットのシー...
-
Excelで同じシートのコピーを一...
おすすめ情報