用VBA禁止使用“另存为”来保存excel工作簿

如果某个工作簿需要由多人合作,分不同的阶段完成,为了避免其中的某个用户将文件另存为其他文件名而影响下一个使用者,可以用VBA代码禁止用户使用“另存为”来保存工作簿。方法如下:

1.按Alt+F11,打开VBA编辑器,在“工程”窗口中双击“ThisWorkBook”,在右侧的代码窗口中输入下列代码:Private Sub workbook_BeforeSave(ByVal SaveAsUI As Boolean, _
Cancel As Boolean)
Dim response As Long
If SaveAsUI = True Then
response = MsgBox("该工作簿不允许用“另存为”来保存," & _
"你要用原工作簿名称来保存吗? ", vbQuestion + vbOKCancel)
Cancel = (response = vbCancel)
If Cancel = False Then Me.Save
Cancel = True
End If
End Sub2.关闭VBA编辑器,保存工作簿。如果是Excel 2007,需保存为xlsm格式。这样,该工作簿只允许通过“保存”命令来保存,当执行“文件→另存为”命令时,将出现不允许使用“另存为”的提示。 单击“确定”按钮将在原文件夹用原名称来保存工作簿,单击“取消”按钮则取消本次操作。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐