如题所述
这个可以弹出路径选择对话框并且将备份设为只读的。
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim flag As Boolean
dim fm as string
flag = False
Do While Not flag
fm = Application.GetSaveAsFilename(fileFilter:="Excel files (*.xls),*.xls,All files (*.*),*.*")
If fm <> False Then
Application.EnableEvents = False
ActiveWorkbook.SaveCopyAs fm
Application.EnableEvents = True
flag = True
End If
Loop
SetAttr pathname:=fm, Attributes:=vbReadOnly
End Sub追问
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim flag As Boolean
dim fm as string
flag = False
Do While Not flag
fm = Application.GetSaveAsFilename(fileFilter:="Excel files (*.xls),*.xls,All files (*.*),*.*")
If fm <> False Then
Application.EnableEvents = False
ActiveWorkbook.SaveCopyAs fm
Application.EnableEvents = True
flag = True
End If
Loop
SetAttr pathname:=fm, Attributes:=vbReadOnly
End Sub追问
您好,代码复制后,保存时,提示类型不匹配出现错误,可以留个QQ吗
追答把 dim fm as string 这句去掉,这不让留qq,看私信
追问不好意思,又麻烦您了,想修改一下,就是在备份文件时多提供一个备份选择(是否选择备份),还有备份文件为建议只读,可以这样做吗?
有时候会修改原文件,再次备份文件时要覆盖备份文件。
还有一个,打开只读文件点击保存,怎样才能做到保存时不另存,谢谢!!!
可以的
温馨提示:答案为网友推荐,仅供参考