下午好,
我有以下代码,用于在保存时创建工作簿的备份。它保存到一个单独的位置,一切似乎都正常工作。为工作簿输入以下代码而不是单个工作表。
有谁能告诉我如何在以下代码生成的备份文件上创建密码保护?
我对VBA脚本很新,但我看到了一个使用另存为功能来创建密码保护的功能,但我不知道如何将其合并到我的代码中。
非常感谢任何帮助!
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Application.EnableEvents = False
thisPath = ThisWorkbook.Path
myName = Left(ThisWorkbook.Name, (InStrRev(ThisWorkbook.Name, ".") - 1))
ext = Right(ThisWorkbook.Name, Len(ThisWorkbook.Name) - InStrRev(ThisWorkbook.Name, "."))
backupdirectory = "Backup"
Set FSO = CreateObject("Scripting.FileSystemObject")
If Not FSO.FolderExists(ThisWorkbook.Path & "/" & backupdirectory) Then
FSO.CreateFolder (ThisWorkbook.Path & "/" & backupdirectory)
End If
T = Format(Now, "mmm dd yyyy hh mm ss")
ThisWorkbook.SaveCopyAs thisPath & "\" & backupdirectory & "\" & myName & " " & T & "." & ext
Application.EnableEvents = True
End Sub
答案 0 :(得分:1)
我有一个名为master.xlsm
的Excel文件。这个小子:
1.save文件
2.使用保护文件扫描文件的备份副本
3.退出Excel
Sub SaveAndBackup()
ThisWorkbook.Save
ThisWorkbook.SaveAs Filename:="backup.xlsm", Password:="secret"
Application.Quit
End Sub
更改此选项以满足您自己的文件命名和位置需求。