2010」という検索で、このサイト・インストラクターのネタ帳へのアクセスがありましたので、いつものようにExcelマクロを作ってみました。[スポンサードリンク]アクティブブックの全ワークシートを別々のブックとして新規フォルダーに保存するサンプルマクロ以下のSubプロシージャを実行すると、アクティブなブックの存在するフォルダーに、ブック名と同じ名前のフォルダーが作成され、そのフォルダーにすべてのワークシートが、別々のブックとして保存されます。Subサンプルマクロの解説WorkbookオブジェクトのNameプロパティは、拡張子付きでブック名を返すので、拡張子なしのブック名を変数・bk_nameに代入しておきます。1)その変数・bk_nameに代入した拡張子なしのブック名などを使って、作成するブックを保存するフォルダーを作成します。2010」に該当する処理はこのあとです。bk.WorksheetsWorksheet.Copyメソッドで、新規ブックにワークシートを複製して、sh.Copyアクティブになっている新規ブックを保存しています。sh.Name引数なしでWorksheet.Copyメソッドを実行したときに、新規ブックを表すWorkbookオブジェクトを返してくれると良かったと思うのですが、そういうつくりにはなっていないので、シートの複製直後には新規ブックがアクティブになっていることを利用して、ActiveWorkbookプロパティでアクティブなブックを表すWorkbookオブジェクトを取得して、SaveAsメソッドで保存しています。Officeの使い方などを紹介し続け(2012年頃からはVBA関連記事が多め)、毎日5万人の方にご覧いただいています。