■選択シートで新しいブックを作成する方法
次の例は、選択したシート("Sheet1"〜"Sheet5")を新しいブック[NewBook.xlsx]で書出します。
Sub NewBook_save()
Dim tblSheet As Variant
Dim WBK元 As Workbook ' 選択元のブック
Dim WBK先 As Workbook ' 書出し先のブック
On Error Resume Next
ChDir Path:=ThisWorkbook.Path
' 新規ブックに書出すシートの配列を作成
tblSheet = Array("Sheet1", "Sheet2", "Sheet3", "Sheet4", "Sheet5")
Set WBK元 = ThisWorkbook
WBK元.Worksheets(tblSheet).Copy
Set WBK先 = ActiveWorkbook ' コピーした新規ブック
WBK先.SaveAs Filename:="NewBook.xlsx"
' 保存先ディレクトリに同じファイル名があった場合の保存確認メッセージへの対応
If Err.Number > 0 Then
MsgBox "[いいえ(N)]か[キャンセル]ボタンが押されました。"
Application.DisplayAlerts = False 'メッセージを出さない
ActiveWorkbook.Close
Application.DisplayAlerts = True
Exit Sub
End If
WBK先.Close False
Set WBK先 = Nothing
MsgBox "NewBook.xlsxの作成に成功しました!"
End Sub