ワークブックSaveおよびSaveAsメソッド

Open メソッドで開いたワークブックを同じファイル名で保存したい場合は Save メソッドを使用します。Add メソッドで新規追加したワークブックを保存したい場合は SaveAs メソッドを指定して使用します。

※保存して閉じたい場合は、前ページの Close メソッドを使用してください。

スポンサーリンク

保存メソッドの使用方法

構文
object.Save
※Save メソッドには引数はありません。

object.SaveAs _
    [FileName] [, FileFormat] [, Password] [, WriteResPassword] _
    [, ReadOnlyRecommended] [, CreateBackup] [, AccessMode] _
    [, ConflictResolution] [, AddToMru] _
    [, TextCodepage] [, TextVisualLayout] [, Local]

※objectはWorkbookオブジェクトを表す変数
引数名 省略 データ型定数 説明
FileName 文字列型 (String) 保存するファイルの名前を表す文字列を指定します。 完全パスを含めることもできます。 完全パスを含めない場合は、ファイルはカレント フォルダに保存されます。
FileFormat バリアント型(Variant) ファイルを保存するときに使用するファイル形式を XlFileFormat クラス定数で指定します。
Password バリアント型(Variant) ファイルを保護するためのパスワードを表す 15 文字以内の文字列を指定します。 大文字と小文字が区別されます。
WriteResPassword バリアント型(Variant) ファイルの書き込みパスワードを表す文字列を指定します。 パスワードを設定して保存したファイルを、パスワードを指定しないで開くと、ファイルは読み取り専用で開かれます。
ReadOnlyRecommended True / False ファイルを開くときに、読み取り専用で開くことを推奨するメッセージを表示するには、True を指定します。
CreateBackup True / False バックアップ ファイルを作成するには、True を指定します。
AccessMode xlExclusive ブックのアクセス モードを排他モードにします。
xlNoChange ブックのアクセス モードを変更しません。 (既定)
xlShared ブックのアクセス モードを共有モードにします。
ConflictResolution xlUserResolution 競合を解決するためのダイアログ ボックスが表示されます。 (既定)
xlLocalSessionChanges ローカル ユーザーの変更が自動的に受け入れられます。
xlOtherSessionChanges ローカル ユーザーの変更ではなく、他のセッションからの変更が自動的に受け入れられます。
AddToMru True / False 最近使用したファイルの一覧にブックを追加するには、True を指定します。 既定値は False です。
TextCodepage バリアント型(Variant) (使用用途不明)
TextVisualLayout バリアント型(Variant) (使用用途不明)
Local True / False Excel の言語設定 (コントロール パネルの設定を含む) に合わせてファイルを保存するには、True を指定します。

保存メソッドの使用例

ワークブックを保存する

ワークブック”test.xlsx”を保存する例です。

Sub sample_eb088_01()
    'シートに変更を加える
    .Worksheets(1).Range("A1").Value = "test"

    'ワークブックを上書き保存
    Workbooks("test.xlsx").Save
End Sub

※Save メソッドを実行しただけでは、ワークブックは閉じません。
※ワークブックを保存して閉じたい場合は、前ページの Close メソッドを使用してください。

新規追加したワークブックを保存する

新規追加したワークブックをファイル名”testNew.xlsx”で保存する例です。

Sub sample_eb088_02()
    With Workbooks.Add    'ワークブックを新規追加
        'シートに変更を加える
        .Worksheets(1).Range("A1").Value = "test"

        'マクロ実行ブックと同一フォルダ内に名前を付けて保存
        .SaveAs Filename:=ThisWorkbook.Path & "¥testNew.xlsx"
    End With
End Sub

 ワークブックの名前とパス Withステートメント

testNew.xlsxで保存された様子
testNew.xlsxで保存された様子

引数 Filename にファイル名のみを指定するとカレントフォルダに保存されます。カレントフォルダは『ファイルを開く』操作などにより変わってしまうので、引数 Filename にはフルパスを指定した方が無難です。

タイトルとURLをコピーしました