ExcelVBAでブックの自動回復機能を操作【ExcelVBA】

Application.AutoRecoverプロパティでAutoRecoverオブジェクト(ブックの自動回復機能)を操作することができる

■Pathプロパティ → 一時ファイルを格納するパスを取得・設定

■Time プロパティ  → 時間間隔を取得・設定 ※既定値10分 1~120分(整数)

■Enabledプロパティ → 有効・無効の設定 有効 TRUE 無効 FALSE

一番上のファイルの保存形式を指定する場合

■Application.DefaultSaveFormatプロパティ ファイルを保存する既定の形式を取得・設定

既定のブック → *.xlsx xlWorkbookDefault

マクロ有効ブック → *.xlsm xlOpenXMLWorkbookMacroEnabled

CSV → *.csv xlCSV

C:\Users\〇〇〇〇\AppData\Roaming\Microsoft\Excel ブックの保存先のデフォルトはユーザー名を設定した場所

こちらをWorkbookのopenイベントで開いた時に設定し、BeforeCloseで閉じる際に元の設定に戻すことで

特定のブックのみ自動回復機能を指定したい設定にする形で実践

ーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーーー

実際に使用したサンプルコード

Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)

With Application.AutoRecover

.Enabled = False
.Time = 10
.Path = "C:\Users\ユーザー\AppData\Roaming\Microsoft\Excel"

End With

Application.DefaultSaveFormat = xlWorkbookDefault

End Sub

Private Sub Workbook_Open()

With Application.AutoRecover

.Enabled = True
.Time = 5
.Path = ThisWorkbook.Path

End With

Application.DefaultSaveFormat = xlOpenXMLWorkbookMacroEnabled

End Sub

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です