![如果 Excel 中的某些单元格未被修改,如何防止打印/保存文件?](https://linux22.com/image/1615942/%E5%A6%82%E6%9E%9C%20Excel%20%E4%B8%AD%E7%9A%84%E6%9F%90%E4%BA%9B%E5%8D%95%E5%85%83%E6%A0%BC%E6%9C%AA%E8%A2%AB%E4%BF%AE%E6%94%B9%EF%BC%8C%E5%A6%82%E4%BD%95%E9%98%B2%E6%AD%A2%E6%89%93%E5%8D%B0%2F%E4%BF%9D%E5%AD%98%E6%96%87%E4%BB%B6%EF%BC%9F.png)
我在 Excel 中有一个模板工作表,我经常更改其中的某些单元格。问题是:如果某些单元格未更改,是否有办法让 Excel 阻止我打印或保存工作表?
答案1
您可以在保存之前使用它来触发。
如果不满足条件,则取消保存。
参见以下示例:
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, _
Cancel as Boolean)
a = MsgBox("Do you really want to save the workbook?", vbYesNo)
If a = vbNo Then Cancel = True
End Sub
您也可以在打印之前执行相同的操作:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
a = MsgBox("Do you really want to print the workbook?", vbYesNo)
If a = vbNo Then Cancel = True
End Sub
下面的部分需要修改才能符合您的标准。
a = MsgBox("Do you really want to print the workbook?", vbYesNo)
If a = vbNo Then Cancel = True
这些需要放入“本工作簿”中,而不是放在模块中。