複数シートを別ブックとして保存するには?

Question 71.4 Excel VBA Borad (掲示板)より Previous Next
いつもこのサイトには本当にお世話になっています。投稿は久しぶりにさせて頂きます。 題名のとおり、1つのブックにある連続した複数シートを別名をつけて保存させる方法を教えて下さい。
別ブックに保存させたい複数シートの位置はいつも10枚目~です。 終わりは最後のシートまでなので、全シート数をカウントして10枚目~最後のシートまでと指定すればいいと思うのですが・・・。
1シートやブック全体を別名で保存する方法は、このサイトにも掲載されているのですが、なにぶん応用ができない初心者なのでよろしくお願いします。
Answer   2004.11.19 もてもて
もてもてです。
一旦ブックを保存して、1~9枚目のシートを削除して、名前を付けて保存。
と、いうのが単純で分かりやすいでしょうか・・・。
Sub test()
    With ActiveWorkbook
        If .Worksheets.Count < 10 Then          'シートが10枚ない場合マクロを抜ける
            Exit Sub
        End If
        Application.DisplayAlerts = False     'シート削除時の確認ダイアログを出さない
        .Save                                   'シート削除前に保存

        i = 1
        For Each a In .Worksheets
            If i < 10 Then                      '1~9枚目まで削除
                a.Delete
            End If
            i = i + 1
        Next
        Application.DisplayAlerts = True
    End With
    Application.Dialogs(xlDialogSaveAs).Show    '保存ダイアログを表示して保存
End Sub
ありがとうございました
もてもてさん、いつもありがとうございます。 おかげさまでできました。 お世話になりました。

 

Excel VBA Macro