シートの保存関係
シートの保存等の操作に用いるのが
GetSaveAsFilenameメソッドで記述は以下のとおり
expression.GetSaveAsFilename (InitialFilename, FileFilter, FilterIndex, Title, ButtonText)
公式の詳細は
https://docs.microsoft.com/ja-jp/office/vba/api/excel.application.getsaveasfilename
GetSaveAsFilenameメソッドで記述は以下のとおり
expression.GetSaveAsFilename (InitialFilename, FileFilter, FilterIndex, Title, ButtonText)
公式の詳細は
https://docs.microsoft.com/ja-jp/office/vba/api/excel.application.getsaveasfilename
操作側 | 保存されたデータ |
---|---|
まずは標準的な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
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形式です。例えば会社の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形式のファイルで保存します。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
以下、そのコードになります。
シートの保存_csvフォーマット(ダウンロード)
操作側 | 保存された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出力
以下、そのコードになります。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をまとめたファイルです。お時間の無い方におまとめ編です。 この場合あらかじめのファイルパスの設定等の機能もありますので個々のパソコンの環境に合わせて 設定を変えてください。
このExcelファイルの中にも、個々の説明があります。参考にしてください。
ある程度、実用的な面も考慮して簡易的ですがデータやパスのチェック機能も付けてあります。