ACCESS VBAで作成済みのExcelファイル
(複数シートがあります)の
コピーを作成し
そのファイルでテーブルのデータを
出力したいと思っています。
シートが1つならできましたが
シートが複数あるとできません。
できる方法を教えてください。
なおシートが一つの場合は、下記でできました。
Dim oXLS As New Excel.Application
Dim NewBook As Excel.Workbook
oXLS.Workbooks.Open Filename:=既存ファイル名
oXLS.ActiveWorkbook.Sheets(シート名).Copy
Set NewBook = oXLS.ActiveWorkbook
oXLS.Workbooks(ファイル名).Close
複数シートがある場合の
作成方法を教えてください。
よろしくお願いします。
Dim oXLS As New Excel.Application
Dim NewBook As Excel.Workbook
Set NewBook = oXLS.Workbooks.Open(既存ファイル名)
NewBook.SaveAs ファイル名
NewBook.Close
でファイル丸ごと別名で保存する=コピーを作ったことになります。
全てのシートを新規のブックに作るには、
oXLS.ActiveWorkbook.Sheets.Copy
Set NewBook = oXLS.ActiveWorkbook
oXLS.Workbooks(ファイル名).Close
でできます。
また、何もせずにファイルを閉じるのであればEXCELを起動してコピーとせずにただのファイルのコピーでも良いかと思います。
FileCopy 既存ファイル名, ファイル名
お礼
全てのシートを新規ブックに作る方法で できました。 ありがとうございました。