教えて!ExcelVBA!

ExcelVBAの基礎知識・書き方について紹介します。

【ExcelVBA ブック操作】ブックを上書き保存(Save)するにはどうすればいいの?教えて!

f:id:m_kbou:20200418130857p:plain

ブックを上書き保存するにはSaveメソッドを使用します。Saveメソッドは引数を持たないメソッドなので、ブックの変更が有る無しに関わらず上書き保存されます。また、新規のブックの場合は新規保存されます。このSaveメソッドの使い方について紹介します。

 

 

構文

記述方法は以下の通りとなります。

Workbooks(”[ブック名]”).Save

[説明]:

ブックを上書き保存するには

 「Workbooks(”[ブック名]”).Save」

と記述します。

[ブック名] 上書き保存するブック名を記述します。
※「”」(ダブルクォーテーション)で囲みます。

[記述例]:

Workbooks("Book1.xlsx").Save
ActiveWorkbook.Save

 

使い方

使い方について具体的に説明します。

指定したブックを上書き保存する方法

指定したブックを上書き保存する方法について説明します。

[プログラミング例]:

Sub サンプル()

  Workbooks("Book1.xlsx").Save

End Sub

内容は、「Book1.xlsxブックを上書き保存して下さい。」との意味になります。

f:id:m_kbou:20210321080331p:plain

※上記のプログラミング例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

※事前準備として、Book1.xlsxファイルを作成して開いておきます。また、開いたBook1.xlsxファイルのA1セルに「テスト」の文字を入力しておきます。

f:id:m_kbou:20210321080355p:plain

①今回は例として演習.xlsmファイルを作成し、以下の様に<実行>ボタンを設置します。<実行>ボタンには上記のプログラミング例のプログラムが登録されています。また、この時点で事前準備で説明したBook1.xlsxファイルが開かれており、A1セルに「テスト」の文字が入力されています。<実行>ボタンをクリックします。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。) 

f:id:m_kbou:20210321080414p:plain

②Book1.xlsxファイルを閉じます。 

f:id:m_kbou:20210321080432p:plain

③先程閉じたBook1.xlsxファイルを再度開きます。するとA1セルに「テスト」の文字が保存されている事が分かります。(※Book1.xlsxファイルが上書きされた事が分かります。)

f:id:m_kbou:20210321080448p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

指定したブックを上書き保存する方法についての説明は以上です。

 

アクティブなブックを上書き保存する方法

アクティブなブックを上書き保存する方法について説明します。

[プログラミング例]:

Sub サンプル()

  ActiveWorkbook.Save

End Sub

内容は、「アクティブなブックを上書き保存して下さい。」との意味になります。

f:id:m_kbou:20210219083108p:plain

※上記のプログラミング例は、VBE(VBA記述画面)に記述しないと実行ができません。VBEの開き方についてはこちらを参考にして下さい。

[実行例]:

①今回は例として演習.xlsmファイルを作成し、以下の様に<実行>ボタンを設置します。<実行>ボタンには上記のプログラミング例のプログラムが登録されています。(※ボタンの作り方やボタンにプログラムを割り当てるにはこちらを参考にして下さい。) 

f:id:m_kbou:20210321092815p:plain

②A1セルに「テスト」の文字を入力し、<実行>ボタンをクリックします。

f:id:m_kbou:20210321092828p:plain

③一度演習.xlsmファイルを閉じ、再度演習.xlsmファイルを開きます。するとA1セルに「テスト」の文字が保存されている事が分かります。(※演習.xlsmファイル(アクティブファイル)が上書きされた事が分かります。)

f:id:m_kbou:20210321092844p:plain

[サンプル]:

上記で説明したファイルをダウンロードできます。ご自由にお使い下さい。

drive.google.com

アクティブなブックを上書き保存する方法についての説明は以上です。 

 

おわりに

今回はブックを上書き保存する方法について説明しました。Saveメソッドは保存確認用のダイアログボックスは表示されず、強制的に上書き保存されてしまいます。注意して下さい。