excel己用VBA禁止保存和另存,能否再用VBA另存?
发布网友
发布时间:2023-11-07 20:13
我来回答
共3个回答
热心网友
时间:2024-10-07 10:02
在宏里面设置一个全局变量,在函数里面对全局变量设置有效跟无效,并判定执行
dim mysave Boolean
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
call mysavesub '调用函数确认保存密码
if mysave = false then '如果布尔类型mysave=false 则不能保存
msgbox "本工作薄禁用保存及另存。"
Cancel = True
end if
End Sub
public sub mysavesub()
psw = "123456" '保存密码
if inputbox("请输入保存密码:) = psw then
mysave = true '临时设置 为可以保存
end if
end sub追问我在表格添加了一个另存为指定文件名的按钮,不知能不能把代码加入这个按钮的宏里,而且不需要输入密码,只有点击按钮才能另存。
热心网友
时间:2024-10-07 10:03
建议你加一段代码,判断是否为本人操作
Environ("username")="你的名字" (电脑开机帐号、区分大小写)
如果是本人操作,就可以保存或另存
如果不是,就不能保存或另存
热心网友
时间:2024-10-07 10:03
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
If SaveAsUI = True Then Cancel = True
End Sub