• 締切済み

エクセル VBA シート名を別シートにコピー

早速の質問ですが エクセルVBAで シート名を別シートにコピーなのですが 10個のシートを順にシート名をコピー&ペーストしたいのです。 Dim aworkbook As Workbook Dim bworkbook As Workbook Set bworkbook = ActiveWorkbook Workbooks.Add Set aworkbook = ActiveWorkbook for i=1 to 10 bworkbook.Activate Worksheets(i).Select Application.CutCopyMode = False aworkbook.Activate Worksheets(i).Select ここに入る文章がわかりません Range("A1").Select next と以上な感じで作ってみたのですが どう貼り付けして良いかわからない状況です nextでまわす以上変数でなければだめなんでしょうけれども 構文が思いつきません。 皆様よろしくお願いいたします。

みんなの回答

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.2

Sub try2() Dim wb As Workbook Dim i As Integer Dim j As Integer Workbooks.Add Set wb = ActiveWorkbook For i = 1 To 10 j = wb.Worksheets.Count If j < i Then wb.Worksheets.Add After:=wb.Worksheets(wb.Worksheets.Count) End If ThisWorkbook.Worksheets(i).Cells.Copy wb.Worksheets(i).Range("A1") Next Set wb = Nothing End Sub

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

自ブックを別名で保存すればいいだけかと思いますが・・・ Sub try() ThisWorkbook.Worksheets.Copy End Sub これでも全てのワークシートを新規ブックにコピーするはずです。 ⇒保存とかは考慮してないですが。

nanny
質問者

補足

シートは15個以上あるうちの10個のみを保存したい状況です。 ですので別名保存ではだめな状況です。

関連するQ&A