開いているマクロブックのバックアップを実行すると、開いているマクロブックは閉じられ、バックアップファイルが作成されるまではいいのですが、バックアップファイルが開いたままになります。
出来ればバックアップファイルも閉じるようにしたいのですが、何を追記すればよいでしょうか?
Sub バックアップ()
Dim rc As Long
rc = MsgBox("バックアップしますか?", vbYesNo + vbQuestion, "確認")
If rc = vbYes Then
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs "C:\excel\" & Format(Date, "yyyymmdd") & ".xlsm"
Application.DisplayAlerts = True
End If
End Sub
お礼
ご回答ありがとうございます。ご指摘いただいたサイトを見て下記内容を追加しました。 ActiveWorkbook.Close これで保存されたブックは閉じますが、Excel自体が閉じないので、以下のVBAを作成して、希望通りになりました。 Sub バックアップ() Dim rc As Integer rc = MsgBox("バックアップを続行しますか?", vbYesNo + vbQuestion, "バックアップ") If rc = vbYes Then MsgBox "バックアップ完了しました。全てのウインドウが閉じられます。" Application.DisplayAlerts = False ActiveWorkbook.SaveAs "C:\excel\" & Format(Date, "yyyymmdd") & ".xlsm" Application.DisplayAlerts = True ActiveWorkbook.Saved = True Application.Quit ActiveWorkbook.Close Else MsgBox "処理は中断されました" End If Application.Quit ThisWorkbook.Close End Sub