![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
No.5ベストアンサー
- 回答日時:
普通エクセルには、新規ブックを開いたときのシート数が決められます。
3が多いと思います。.SheetsInNewWorkbook = 3
とかです。
するとシート名はSheet1、Sheet2、Sheet3という名前にとりあえずなります。
質問は具体的にシート名を書いてくれているのは良いが、上述の名前とぶつかります。それをあえてSheet2とかに拘るなら、一旦シートを削除したり、名前を別の名前に変えないとなりません。
ーー
質問としてはシートを増やした後のシート名は自動的には
Sheet1(2)のようになるが、したい名前は
A.ルール化した名前「シート1」「シート2」
B.前もってシートのセルに入力しておく
などしないといけません。
ーー
(1)シートを増やす・コピーする程度のVBAは解説書・WEBに必ず載ってます。
1冊も本を読んでないのでは?
(2)エクセルVBA学習は、エクセルの操作や機能、状況を勉強するのと、表裏一体です。VBAのコードだけ知ろうとしても無理です。マクロ初心者でも、必要最小限、エクセルを知らないのではダメです。質問にそれが伺えます。
ーー
Sub test01()
n = Sheets.Count
'MsgBox n
Sheets("Sheet1").Copy after:=Sheets(n)
ActiveSheet.Name = "シート" & n + 1
End Sub
ーー
.Name
Sheets.Count
Sheets(インデックス番号)の意味
を勉強してください。
No.3
- 回答日時:
#2です。
補足です。
最初のシート名を
Sheet(1)
という名前にしておけば、#2のマクロを実行すると
Sheet(2)、Sheet(3)、Sheet(4)という名でコピーされていきます。
実用上問題となる場合はこの回答は無視してください。
No.2
- 回答日時:
シート名にこだわらなければ
Sub test()
ActiveSheet.Copy after:=ActiveSheet
End Sub
参考>http://t_shun.at.infoseek.co.jp/My_Page/Excel-VB …
No.1
- 回答日時:
エクセルでSheet1シートのコピーを行うと、シート名は「Sheet1(2)」になります。
これをSheet2、Sheet3のようにしたいということでしょうか?以下はアクティブシートをSheetX(Xは既存複数シートで最大の数字)のXの次に大きな数字の名前でCOPYするマクロです。
マクロはALT+F11でVBE画面を開き、左上のVBA Projectでシート名を右クリックし「挿入」→「標準モジュール」で表示される画面に貼り付けて下さい。マクロの実行はALT+F8でマクロ一覧を開き、マクロ名を選択して「実行」ボタンです。
Sub Macro3()
Dim MaxSheet As Integer
Dim strShNo As String
Dim sh As Worksheet
For Each sh In Worksheets
strShNo = Application.Substitute(sh.Name, "Sheet", "")
If IsNumeric(strShNo) Then
If MaxSheet < Val(strShNo) Then
MaxSheet = Val(strShNo)
End If
End If
Next sh
Activesheet.copy after:=Worksheets(Worksheets.Count)
ActiveSheet.Name = "Sheet" & MaxSheet + 1
End Sub
この回答への補足
早速ありがとうございます。
早速試さしてもらいました。もう少し御願いします。
コピーするシートは、Sheet1です。Sheet1を原紙として使用したいと思っています。
宜しく御願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) Excelにて、行の最後のセルの値をコピーして別sheetに張りつけるVBAコードをご教授願います 3 2022/11/20 14:35
- Visual Basic(VBA) Sheet「状況」から、分類の年齢別カウント数をSheet「D表」へ転記する下記マクロを作っています 7 2022/12/14 17:57
- Visual Basic(VBA) VBA For Each 〜 複数条件について 3 2022/10/20 20:05
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/08/03 11:27
- Visual Basic(VBA) userformでSheetを選択して開くコード 1 2023/05/15 16:27
- Excel(エクセル) 【マクロ】マクロが保存されているエクセルとは、別のエクセルブックの全シートの非表示列を再表示したい 1 2022/12/24 20:48
- その他(プログラミング・Web制作) python OpenPyXLを使って出力結果をエクセルに書き込み 2 2022/06/04 19:46
- Visual Basic(VBA) VBA 最終行まで数式をコピーする 3 2023/01/03 15:44
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/05/24 08:33
- Visual Basic(VBA) EXCELのVBAについて 2 2023/07/05 17:17
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
マクロを複数シートに実行する...
-
コマンドボタンがデザインモー...
-
エクセルでシートの並び替えで...
-
エクセルを開いたとき常に同じ...
-
EXCELの起動時に常に同じ...
-
エクセルで、マクロボタンの表...
-
VBA シート名を先月の名前に...
-
VBAで条件によってシート見出し...
-
【 Excel】シートの見出しに自...
-
マクロを特定の複数シートで実...
-
エクセルで回数をカウントする...
-
VBA ワークシートオブジェクト...
-
EXCELでワークシートを開いたら...
-
EXCELのエラー
-
エクセルVBAでcmbBoxのプロパテ...
-
エクセル2013でマクロのボタン...
-
AccessのVBAで、Excelのマクロ...
-
エクセルで複数のSheetを一括フ...
-
シートを保護した時でも並べ替...
-
うまくマクロが実行しません
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
マクロを複数シートに実行する...
-
コマンドボタンがデザインモー...
-
エクセルを開いたとき常に同じ...
-
【 Excel】シートの見出しに自...
-
エクセルでシートの並び替えで...
-
VBAで条件によってシート見出し...
-
EXCELでワークシートを開いたら...
-
EXCELでマクロを使わずに図形の...
-
マクロを特定の複数シートで実...
-
エクセルの複数のワークシート...
-
EXCELのエラー
-
複数シートの保護・解除
-
VBA シート名を先月の名前に...
-
エクセル2013でマクロのボタン...
-
VBAで作るexcel検索窓
-
EXCELの起動時に常に同じ...
-
シートを保護した時でも並べ替...
-
Excelで,特定のシートを開いた...
-
Excelのマクロの呼び出し元を知...
-
メッセージボックスでシート名...
おすすめ情報