Excelブックを別名で保存する
<< エクセルVBAでExcelブックを上書き保存する :前の記事
こちらでは、WorkbookオブジェクトのSaveAsメソッドを利用して、Excelブックを別名で保存する方法について解説しています。
メソッドとは、オブジェクトを操作する命令文のことでオブジェクトの動作になります。 メソッドを利用するにはオブジェクト名とメソッド名の間に「.(ピリオド)」で結んで記述します。
オブジェクト名.メソッド名
目次
はじめに
こちらでは、SaveAsメソッドを利用したExcelのブックを別名で保存する方法について解説します。
利用するメソッドについて
今回利用するメソッドは以下になります。- SaveAsメソッド
SaveAsメソッドとは
WorkbookオブジェクトのSaveAsメソッドは指定したブックを別名で保存します。SaveAsメソッドには引数はありません。
ブックを別名で保存するサンプルコード
今回のVBAコードはExcelのブックを別名で保存するマクロになります。
Sub sample()
Workbooks("Book1").SaveAs Filename:="Book2"
End Sub
実行結果
「Book1」ブックが「Book2」のファイル名で保存されます。
解説
sampleプロシージャのSubステートメントに引数は設定されていません。WorkbookオブジェクトのSaveAsメソッドには、引数Filenameに「Book2」を設定しています。引数Filenameは、保存するファイル名を設定しますので、ファイル名が「Book2」のファイルが保存されます。そして、最後はEndステートメントを利用してsampleプロシージャを終了させます。
今回は、引数Filenameにファイル名のみを記述しましたが、その場合ファイルはカレントフォルダに保存されます。指定した場所へ保存したい場合は、以下のように絶対パスで記述するようにしましょう。
Sub sample()
Workbooks("Book1").SaveAs Filename:="C:\Book2"
End Sub
また、こちらでは名前付き引数を使用して引数設定していますが、以下のように名前付き引数をつけなくても設定できます。
Sub sample()
Workbooks("Book1").SaveAs "C:\Book2"
End Sub
CSV形式でブックを保存するサンプルコード
今回のVBAコードはCSV形式でExcelのブックを保存するマクロになります。
Sub sample()
Workbooks("Book1").SaveAs Filename:="Book2", FileFormat:=xlCSV
End Sub
実行結果
「Book1」ブックをファイル名が「Book2」のCSV形式で保存します。
解説
SaveAsメソッドの引数Filenameに「Book2」を引数FileFormatに「xlCSV」を設定しています。引数FileFormatは、ファイルを保存するときのファイル形式を設定しますので、ファイル名が「Book2」のCSVファイルが保存されます。
まとめ
今回は、WorkbookオブジェクトのSaveAsメソッドを利用して、Excelのブックを別名で保存する方法について解説しました。次回は、エクセルVBAでExcelブック保存時のファイル形式を指定する方法について解説します。
エクセルVBAのブック操作一覧
次の記事: エクセルVBAでExcelブック保存時のファイル形式を指定する >>
近田 伸矢, 植木 悠二, 上田 寛
IEのデータ収集&自動操作のプログラミング本はこの1冊だけ!IEの起動やポップアップウィンドウ、表示を制御する基本的なコードはもちろん、テキストボックスやラジオボタン、表、ハイパーリンクなどのHTML部品を制御する方法など、自動操作に欠かせないノウハウを丁寧に解説。