• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excel 複数 シートコピー 同時に名前も・・・)

Excel複数シートコピーのVBAで同時に名前も変更する方法はあるか?

このQ&Aのポイント
  • Excelのシートコピーを複数つくるVBAを探しています。Sheet1を10シートコピーする場合に方法はありますでしょうか?
  • シートコピーのみでもよいので、教えていただけませんか?
  • VBAを使用してExcelのシートを複数コピーする方法について、シート名も同時に変更することは可能でしょうか?

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

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

コピー元は「Sheet1」とし,複製は「test○○」のようだとすると sub macro1()  dim i as long  dim n as long  dim w as worksheet ’既にあるシート名を付けようとしてエラーで止まらないようにすること  for each w in worksheets  if w.name like "test*" then  n = application.max(n, val(mid(w.name,5,9)))  end if  next ’シートを複製して正しい名前を付けること  for i=n + 1 to n + 10  worksheets("Sheet1").copy after:=worksheets(worksheets.count)  activesheet.name = "test" & i  next i end sub #デタラメをやっても動かないのは当然なので,ヘルプなどを良く読む習慣をまず身につける必要がありそうですね。

gastronome
質問者

お礼

精進します ありがとうございます。

その他の回答 (3)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

NO2です。 >Sheets("sheet1").Copy after:=Sheets(Sheets.Count), Count:=3 と作ったのですが動きませんでした  ⇒VBAの学習不足です。   VBAの知識もなくVBAを始める事は無理があります。   先ずは、沢山あるVBA入門サイトか参考書の一つでも読破して下さい。   一例の入門サイトを添付しましたので一度ご確認下さい。

参考URL:
http://www.eurus.dti.ne.jp/~yoneyama/
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

>Excelのシートコピーを複数つくるVBAを探しています。  ⇒コードコピーから始まっても良いが、そのコードの意味を咀嚼しないと駄目です。   自分で作成してなんぼなのだから回答の丸映しはやめましょう。 ヒント例です。 Sheets("sheet1").Copy after:=Sheets(Sheets.Count) ‘シート1を最右端へコピー ActiveSheet.Name = "シート名" ’コピーシート名前の変更

gastronome
質問者

お礼

いろいろとご指導ご鞭撻のほどよろしくお願いします 例えば、3シート追加する場合は Worksheets.Add After:=Worksheets("Sheet1"), Count:=3 ですよね 上記のヒントを利用して Sheets("sheet1").Copy after:=Sheets(Sheets.Count), Count:=3 と作ったのですが動きませんでした。  また、いろいろと勉強してみます。

noname#152318
noname#152318
回答No.1

 初心者です。 m(_ _)m 流れだけですが、マクロ記録開始にしてシートタブを選択してコピーします。  1シートでも良いのですが、2~10シートコピーして、マクロを終了させます。   ○シフトキーを押しながら2枚目のシートをクリックするとその間のシートも全て選択    できます。   ○コントロールキーを押しながらシートを選択すると、複数のシートを選択できます。   ○右クリックで、【移動またはコピー】→【コピーの項目にチェックを入れる】→【OK】     で瞬時にシートがコピーされて増えます。     必要に応じてシート名を書き換えます。       記述をボタンに記録します。 次回からはマクロボタンをクリック下だけで、コピーされたシートがマクロで  バンバンできます。 マクロにしなくても、○印だけでも相当早いです。

関連するQ&A