
シートを指定枚作成するマクロを作りました。
しかし、コピー元であるsheets (1)にはマクロが組まれており、これを実行するとコピーしたシートにもマクロが付いてきてしまいます。
sheets(1)のマクロは残したままでいいのですが、それ以外のシート(追加するシート)をマクロなしでコピーする方法はあるでしょうか?
ご存じの方がいましたら、どのように直せばいいか教えていただきたいです。
Public Sub シートコピー()
Dim シート数 As Variant
シート数 = Application.InputBox(prompt:="コピーしたいシート数を入力してください", _
Title:="数値入力", _
Type:=1)
If TypeName(シート数) = "Boolean" Then
MsgBox "キャンセルします"
Exit Sub
End If
Dim i As Long
For i = 1 To シート数
Sheets(1).Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = "パターン" & i
Next i
Sheets(1).Select
End Sub
No.3ベストアンサー
- 回答日時:
こんにちは
>マクロなしでコピーする方法はあるでしょうか?
シートのコピーをせずに、
・新規シート作成
・シート全体(=Cells)をコピペ
すればできるでしょう。
(2枚目以降はそのシートをコピーでいけます)
そんなことをしなくても、事前にコピー用の雛形(マクロなしのシート)を作成しておいて、非表示にでもしておけば、ほぼ現状のコードのままでもいけますね。
回答ありがとうございます。
Sheets(1).Copy After:=Sheets(Sheets.Count)をSheets(1).Cells.Copy After:=Sheets(Sheets.Count)にすればよいということでしょうか?(先ほど試すとエラーになってしまいました)
No.2
- 回答日時:
No.1さんの回答に補足します。
マクロの記載場所をシートではなく標準モジュールのModule1へ移すと良いでしょう。
VBAエディタの画面で [挿入]→[標準モジュール]。
左側のプロジェクトエクスプローラーで 標準モジュール をWクリック。
あとこれ↓も参考になるかも
https://oshiete.goo.ne.jp/qa/2167570.html
このマクロは標準モジュールに記載しています...
その質問もすでに拝見しましたが、初心者なものでコードのみでなにがどうなっているかが分からず...
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) まとめシートから集計シートへA列のコードが一致したら1行コピーするマクロをネット上で見つけました。こ 1 2022/08/30 14:11
- Excel(エクセル) マクロで最終行から上に検索を逆にしたい 1 2022/05/17 18:27
- Visual Basic(VBA) 最終行の指定について教えてください。 複数シートを1シートへまとめる下記マクロでは各シートの6行目を 1 2022/10/04 18:37
- Excel(エクセル) エクセル VBAでシートのコピーを作りたい 1 2023/05/18 07:42
- Visual Basic(VBA) 別ブックからシートのコピー 3 2022/04/01 20:07
- Excel(エクセル) VBAのoffsetの動き方について教えてください 3 2022/11/25 23:36
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/02/26 13:19
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2022/10/13 08:41
- Excel(エクセル) ②Excel 簡単にシートコピーしたら前日の残高と日付を変更させたい→マクロの記録でエラーが出ます 8 2022/07/16 20:40
- Visual Basic(VBA) コード名シートA列と集計シートA列のコードが一致したら、コード名シートA5からk12の範囲をコピーし 1 2022/08/29 23:46
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
excelのマクロで該当処理できな...
-
特定の文字を含むシートだけマ...
-
XL:BeforeDoubleClickが動かない
-
【VBA】シート名に特定文字が入...
-
VBA 存在しないシートを選...
-
Excelマクロのエラーを解決した...
-
エクセルVBA Ifでシート名が合...
-
エクセルのシート名変更で重複...
-
ユーザーフォームに入力したデ...
-
実行時エラー1004「Select メソ...
-
Excel VBA で自然対数の関数Ln...
-
【ExcelVBA】全シートのセルの...
-
エクセル・マクロ シートの非...
-
ExcelのVBAのマクロで他のシー...
-
シートが保護されている状態で...
-
VBAの授業でナンプレを制作して...
-
複数シートに色付きセル(条件つ...
-
ブック名、シート名を他のモジ...
-
実行時エラー'1004': WorkSheet...
-
VBAマクロでシートコピーした新...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelマクロのエラーを解決した...
-
特定の文字を含むシートだけマ...
-
【ExcelVBA】全シートのセルの...
-
ユーザーフォームに入力したデ...
-
excelのマクロで該当処理できな...
-
実行時エラー'1004': WorkSheet...
-
ブック名、シート名を他のモジ...
-
実行時エラー1004「Select メソ...
-
VBA 存在しないシートを選...
-
ExcelVBA:複数の特定のグラフ...
-
エクセルのシート名変更で重複...
-
IFステートの中にWithステート...
-
VBA 検索して一致したセル...
-
ExcelのVBAのマクロで他のシー...
-
XL:BeforeDoubleClickが動かない
-
別のシートから値を取得するとき
-
エクセルVBA Ifでシート名が合...
-
エクセル・マクロ シートの非...
-
シートが保護されている状態で...
-
シート削除のマクロで「delete...
おすすめ情報