• ベストアンサー

シートをコピーして シートに1から連番をふる

(マスター)というシートがありまして、そのシートをコピーしてシート名に1からの連番をふる マクロをお教え下さい。 Sub sub_CopySample() Dim myLooP As Integer For myLooP = 1 To 10 Sheets("マスター").Copy After:=Sheets(myLooP) Next myLooP For myLooP = 1 To 10 Sheets(myLooP + 1).Name = myLooP Next myLooP End Sub これだと止まりません。 1シートづつ増やしたいのですが。

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

  • ベストアンサー
  • mar00
  • ベストアンサー率36% (158/430)
回答No.4

>1シートづつ増やしたいのですが。 マクロを実行するごとに1シート増やしたいという事でしょうか。 ブックにマスターというシートしかない(1番のシートを増やす時だけ)が前提ですが Sub Macro1() myNumber = Worksheets.Count Sheets("マスター").Copy After:=Worksheets(Worksheets.Count) ActiveSheet.Name = myNumber End Sub

noname#198014
質問者

お礼

有り難うございました。 今、マクロを勉強中なので、簡単な質問で失礼しました。

その他の回答 (3)

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.3

>1シートづつ増やしたいのですが。 こういうことを言いたかったのですか。 sub macro2()  dim i  i = 1  worksheets("マスター").copy after:=worksheets(worksheets.count)  on error goto errhandle  activesheet.name = i  exit sub errhandle:  i = i + 1  resume end sub

  • LHS07
  • ベストアンサー率22% (510/2221)
回答No.2

im myLooP As Integer For myLooP = 1 To 10 Sheets("sheet1").Copy After:=Sheets(myLooP) Stop Next myLooP For myLooP = 1 To 10 Sheets(myLooP + 1).Name = myLooP Next myLooP End Sub Stopを入れればそこで止まりますが。

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

はて? sub macro1()  dim i as integer  for i = 1 to 10  ’常にマスターからコピーする。複写シートに名前を付ける。   worksheets("マスター").copy after:=worksheets(worksheets.count)   activesheet.name = i  next i end sub といった事でしょうか。

関連するQ&A