Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim g_password As String
g_password = "Abc" & Year(Now) & Application.Text(Month(Now()), "00") & Application.Text(Day(Now()), "00")
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True, Password:=g_password
End Sub
直接把Sub AUTO_CLOSE()到End Sub的内容删除,然后保存即可。
把Activeworkbook修改成Thisworkbook看看。
Sub auto_close()
Dim pw As String
Application.DisplayAlerts = False
pw = Application.WorksheetFunction.Text(Now(), "yyyymmdd")
ThisWorkbook.Save
ThisWorkbook.Password = pw
Application.DisplayAlerts = True
End Sub