Sample Site

シートの保存関係

シートの保存の操作はこれも基本的な操作です。なんらかの処理の結果を、所定の形式で保存することになります。 その場合も、保存する場所、ファイル名、ファイル形式、ファイル後の処理等々の要素を設定して操作をすることになります。 ここでは、excel(標準形式)、csv、pdfの3種類のファイル形式のシート保存について説明します。


シートの保存等の操作に用いるのが
GetSaveAsFilenameメソッドで記述は以下のとおり
expression.GetSaveAsFilename (InitialFilename, FileFilter, FilterIndex, Title, ButtonText)
公式の詳細は
https://docs.microsoft.com/ja-jp/office/vba/api/excel.application.getsaveasfilename

シートを保存する(Excelフォーマット)
操作側保存されたデータ

まずは標準的なExcelフォーマットで特定のシートを保存する例をしめします。 読みこむ時と同じように保存するダイアログを出して、場所、ファイル名等を設定して保存します。
1)保存ダイアログを出す
Filename = Application.GetSaveAsFilename(InitialFileName:=nmfile & ".xlsx", FileFilter:="EXCELファイル" & ",*" & ".xlsx")
2)新規シートにコピー操作
Sheets("DATA").Select
Sheets("DATA").Copy
3)シートの保存
ActiveWorkbook.SaveAs Filename:=Filename, CreateBackup:=False

以下、特定シートをExcelフォーマットで保存する場合の基本的なコードです。DATAシートのデータはダミーデータです。

シートの保存_Excelフォーマット(ダウンロード)

シートを保存する(csvフォーマット)
操作側保存されたcsvデータ

業務のデータのやり取りで最も汎用なデータフォーマットがcsv形式です。例えば会社のERPシステムからデータを取り出す場合や逆に外側のシステムやアプリから、ERPシステムにデータを入れる場合 も多くの場合csv形式が使われます。ここではExcelからのシートデータをcsv形式に出力する例を示します。
1)保存ダイアログを出す
Filename = Application.GetSaveAsFilename(InitialFileName:=nmfile & ".csv", FileFilter:="csvファイル" & ",*" & ".csv")
2)新規シートにコピー操作
Sheets("DATA").Select
Sheets("DATA").Copy
3)シートの保存
ActiveWorkbook.SaveAs Filename:=Filename, FileFormat:=xlCSV, CreateBackup:=False
例ではDATAシートにある表になったデータをcsv形式のファイルで保存します。
以下、そのコードになります。

シートの保存_csvフォーマット(ダウンロード)

シートを保存する(pdfフォーマット)
操作側保存されたpdfデータ

pdfフォーマットはcsvフォーマットと同じく最も汎用的なフォーマットで主に、元の構成がそのまま表示できるので様々なデータの公開によく用いられます。 excelやcsvフォーマットでの保存の場合と若干処理がことなりますので注意してください。
ExportAsFixedFormatメソッドを用いてexcelbookをpdfフォーマットに出力しています。
1)保存ダイアログを出す
Filename = Application.GetSaveAsFilename(InitialFileName:=nmfile & ".pdf", FileFilter:="Pdfファイル,*" & ".pdf")
2)pdfの書式の設定をする
With Sheets("DATA").PageSetup 'DATAページの書式設定
   .Zoom = False
     :
   .BottomMargin = Application.CentimetersToPoints(1)
End With
3)シートの保存をする
Worksheets("DATA").Activate
Worksheets("DATA").ExportAsFixedFormat Type:=xlTypePDF, Filename:=Filename
'選択したシートをPDF出力
以下、そのコードになります。

シートの保存_pdfフォーマット(ダウンロード)

シートの保存等の操作まとめのTIPSファイル
以上のTIPSをまとめたファイルです。お時間の無い方におまとめ編です。 この場合あらかじめのファイルパスの設定等の機能もありますので個々のパソコンの環境に合わせて 設定を変えてください。
このExcelファイルの中にも、個々の説明があります。参考にしてください。
ある程度、実用的な面も考慮して簡易的ですがデータやパスのチェック機能も付けてあります。


Sample Site