Workbook_NewSheet(Byval Sh as Object)

我已经实现了2个不同级别的授权访问ThisWorkbook。 级别1只允许用户修改特定的可见工作表,并且不授权他/她执行其他任何操作,包括添加新的工作表。 (2级用户可以看到所有内容,并对工作簿做任何事情)。

我的问题是如何防止1级用户试图创build一个新的工作表。 我正在尝试使用“Workbook_NewSheet”事件来处理这个事件,立即删除这张表创build的时刻。 然而,参数“Sh”是通过值传递的,而作为“对象”而不是“工作表”。 我不能修改(或删除)这个“Byval”对象。

任何人有任何build议?

谢谢,

您可以通过使用密码保护工作簿来完成此操作

保护工作簿的结构将防止用户插入新的工作表或图表。 密码保护工作表或工作簿元素

你可以参考下面的Sh 。 下面的代码closures警报,删除新创build的工作表,然后重新打开警报。

Private Sub Workbook_NewSheet(ByVal Sh As Object) Application.DisplayAlerts = False Sh.Delete Application.DisplayAlerts = True End Sub