• ベストアンサー

エクセルのワークシート

エクセルのブックをワークシート一枚ずつ別々に保存する方法はありますか?教えてください!

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

  • ベストアンサー
noname#204879
noname#204879
回答No.1

1.当該ブックの任意のシート見出しを右クリックから[移動またはコピー]   を選択 2.[移動先ブック名]ボックス内で“(新しいブック)”を選択 3.下の“コピーを作成する”にチェック入れ 4.[OK]をクリック して出来上がった(1枚のシートのみの)ブックを[名前を付けて保存]すればよろしいかと。 他のシートも上の操作を繰り返すだけ。 でも、こちらの方が超簡単です。 1.当該ブックで1枚のシートのみを残して、他の全てのシートを削除 2.[名前を付けて保存] この操作をシートの数だけ繰り返す。

higatano
質問者

お礼

ずっと放置したままにしてあり大変申し訳ありませんでした。参考になりました。ありがとうございます。

その他の回答 (1)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

多数のシートを一括して一度でやる方法(VBA) (A)対象とするブック (B)一時的なブック(BBB.xls) (C)保存される(された)ブック((A)のシート名と同じブック名) を考えます。 (B)は最低1つのシートのブックでよく、そのシート名は(A)のシート名と同じものは無い、ようにする。内容は空白としておく。 (B)の最低1つのシート名はaaaとする。 (A)はもちろん(B)も開いておく。 (A)の標準モジュールに、下記を貼り付け、(A)をアクチブにして、 実行する。 Sub test01() Dim sh As Worksheet For Each sh In ActiveWorkbook.Worksheets MsgBox sh.Name sh.Copy before:=Workbooks("bbb.xls").Worksheets("aaa") Workbooks("bbb.xls").SaveCopyAs sh.Name & ".xls" sn = sh.Name Workbooks("bbb.xls").Worksheets(sn).Delete Next End Sub これでシート数だけ、シート名のブックができる。 ブックbbbのシート名snの削除をしても良いかと毎シートごとに聞いてくるので、削除をクリック。 上記コードの初めに Application.DisplayAlerts = False 終わりに Application.DisplayAlerts = True をいれるとそれらは防げる。 もう少しましな方法があるかもしれないが、少してこづって時間がかかり、これで上げます。

関連するQ&A