• ベストアンサー

エクセルで各シート毎にブックに分割したい

エクセルの1つのブックに複数の名前がついたシートがあり、その各シート毎にシート名のブックに分割したいのです。 シートが少なければ手作業で分割するのですが、100枚近くのシートがあるので、できればマクロで一括処理できれば助かるのですが。 過去ログで複数のブックのシートを一つのブックにまとめる事例がありましたので、その逆もできると思うのですが。 よろしくお願いします。

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

  • ベストアンサー
  • x0000x
  • ベストアンサー率52% (67/127)
回答No.1

こんばんは。 こんな感じで如何でしょうか? Sub splitBook() Const path As String = "C:\" '\まで記述 Dim bk As Workbook Set bk = ActiveWorkbook Dim st As Worksheet For Each st In bk.Sheets Workbooks.Add st.Copy Before:=ActiveWorkbook.Sheets(1) ActiveWorkbook.SaveAs path & st.Name & ".xls" ActiveWorkbook.Close Next End Sub

kkaazzuu
質問者

お礼

これで完璧です しかしよくこんな簡潔なコードで出来るものですね 自分でも書けるように勉強します ありがとうございました

その他の回答 (1)

noname#97729
noname#97729
回答No.2
kkaazzuu
質問者

お礼

お礼が大変遅くなってすみません 残念ながら、↑のサイトは会社でブロックされて見る事が出来ません ↓の方で解決つきました。 ありがとうございました

関連するQ&A

  • エクセルのシートを分割して見たい

    エクセル2002を使っています。 違うブックを2つ開いて、「ウィンドウ」→「整列」→「左右」とすると、2つのブックが2分割して現れ、2つのブックを見ながら作業が出来ます。 ですが、シートを分割して見たいという時はどうするのでしょうか? 「作業」というブック内に、「1」のシートと「2」のシートがあります。 「1」のシートを開いていて、「2」のシートを見たい時はシートをクリックして切り替えていますが、同時に2つのシートを見ながら作業がしたいです。 無理なのでしょうか?

  • フォルダ内の全ブックのシート名を変更したいです。

    同一フォルダ内に、ファイル名の違うエクセルブックが100個ほどあります。 その100個のそれぞれには、シートが1つ入っています。(シート名は、ブック毎に異なっています) それらのシート名を100個全部、「2013-07」という名前にしたいのですが、マクロで一括処理はできますでしょうか? データが多く、マクロ初心者なので、困っております。。 エクセルは2013を使用しています。 お教えいただければ幸いですm(_ _)m

  • EXCELの複数シートをそれぞれ別ブックへ保存したい

    EXCEL97を使用しています。 1つのブック内に複数のシート(10~20枚)があります。 これを全て1シートずつの別のブックに分けて保存をするマクロを作成したいのですが、できますでしょうか? できれば各シート内の(A4)に入力されている文字列を各ブックの名前として使用したいのですが・・・。 (各シートのセルA4の値に重複はありません) 現在は各シートを新しいブックにコピーして名前を付けて保存、の作業をシート数分繰り返しています。 すみませんがよろしくお願いいたします。

  • エクセルのワークシートの名前変更・・・

    朝からずっと調べているんですが、なかなか良い過去ログが無かったので、教えてください。 エクセル2003で、1つのブックの中に、複数のシート(シートの数は不定、またシート名は「sheets1」とかではなく、日本語形式です)が有ります。そのシートの名前を、1~という数字の連番に変えたいのですが、良い方法又はマクロを教えてください。 当方マクロ初心者ですので、具体的に作って頂けると助かるのですが・・・ 宜しくお願い致します。

  • エクセル:複数ブックから任意のシートを選んで結合

    お世話になります。 複数のブックをひとつにまとめるという質問は過去にもたくさんあったのですが次の場合の対処がわかりませんでしたので教えてください。 なお手動でやるのではなく、マクロやフリーソフトなどで自動化したいと思っています。 1つのフォルダに複数のブックがあり、各ブックには複数のシートがあります。各ブックの先頭シート(一番左のシート)だけを1つのブックにまとめたいのです。 現在、各ブックの先頭シート(一番左のシート)の名前には「人の名前」が入っています。 1つにまとめるブックを 全員.xls として、このブックの各シートに各ブックの先頭シート(一番左のシート)の名前(人の名前)をつけて保存したいのです。 結合する際に「人の名前」のようにシート名が違うことが問題になるならば、すべてのブックのSheet1だけをまとめるというやり方でも構いません。 この場合、全員.xlsの各シート名は適当でも良い。 よろしくお願いします。

  • 複数のブックを新しいブックのSheet1にまとめたい

    教えてください。 「A」「B」「C」「D」「E」「F」「G」 と言った名前のエクセルファイルがあります。 実際は約50個ありますが・・・。 それぞれ、Sheet1にのみ同じフォーマットですが、行数というか、件数が異なります。 新しいエクセルブックのSheet1にA」のデータの下に「B」のデータを貼り付けるという風に、「A」~「G」をまとめて一つのシートにまとめたいです。コピペではなくマクロでできるということを知りました。 毎月作業することになるので、マクロを組んでおきたいと思っています。 しかし、マクロは単純作業を記録して実行するというような基本的なことしかわかりません。 専門的用語ではなく、 (1)ツールをクリック (2)すべてのブックを開いておく (3)Visual Basicをクリック などというように、手順を教えていただけないでしょうか? よろしくお願いします。

  • 複数のエクセルブックの中のシート指定して一括印刷

    複数のエクセルブックの中のシート指定して一括印刷 複数のエクセルブック(400枚)がある中で、シートが1~4あります。 そのエクセルブックの中のシート1とシート3だけを印刷していきたいのですが、 400回エクセルを開いてシート指定しないと印刷できないでしょうか? できれば、全ブックのシート指定をして、一括での印刷は可能でしょうか? 良きアドバイス等がありましたら教えて頂けたらと思います。 宜しくお願い致します。

  • エクセルVBAの処理でブックの中に複数のシートがあり、そのシート名と同

    エクセルVBAの処理でブックの中に複数のシートがあり、そのシート名と同じ名前の他のブックにそのシートを順々に挿入していきたいのですがどうすればよいのでしょうか。 宜しくお願い致します。

  • 【Excel 2003】複数のブックのシートを一つのブックにコピーにしたい

    お世話になっております。 【Excel 2003】を使っております。 複数のブックには、複数のシートがありまして、 複数のシートを一つのブックにコピーしたいのですが、 手作業ですと、大変時間がかかります。 現在は、一つ一つブックをあけて、シートのコピーで 一つの新しいブックにいれてます。 なにか、これを簡単にできる方法は、ありませんでしょうか? フリーのソフトでも、マクロでも、教えていただけたら 助かります。よろしくお願いします。

  • Excelのシート→ブック

    Excelのシート→ブック Excelに複数のシートがある状態です。 そのシートを個別のファイル名=シート名で一発で個別のブックにする方法はありますか?

専門家に質問してみよう