我正在寻找一种方法来阻止用户删除用作日常报告模板的电子表格。用户应该将电子表格的名称更改为今天的日期(即01-14),然后运行一个宏来创建今天的工作表副本并将其重命名为“新的一天”。我需要确保用户无法删除“新日”表,因为它包含公式。我很擅长使用MS Excel 2007。
感谢您提供任何帮助!
答案 0 :(得分:0)
在原始工作表上试用Protect Sheet
。
转到Review
转到Protect Sheet
。确保"保护工作表和锁定单元格的内容"已选中,如果您没有输入密码,则表格会受到保护,但有些人可能需要付出一些努力才能取消保护。如果您只是担心他们不小心删除了表格,这肯定会有所帮助。
答案 1 :(得分:0)
这对我今天早上在Excel 2010上运行正常,只需在2007年进行测试并告诉我。
将以下内容粘贴到特定的工作表模块中。
Private Sub Worksheet_Activate()
ThisWorkbook.Protect "yourpassword"
End Sub
Private Sub Worksheet_Deactivate()
ThisWorkbook.Unprotect "yourpassword"
End Sub
这在Excel 2010中完美运行,允许我编辑和删除单元格/行/列。
然后,当您要复制它时,您需要Select
另一张工作表进行查看,因为只要选择了特定工作表,它就会应用密码,这将删除选择移动/复制/删除。这也适用于复制的表格。
Sub SomeSub()
Dim MySheet As Worksheet
Set MySheet = ThisWorkbook.Sheets("Sheet1")
'Due to the the Protection of the Sheet while it is active
'you then need to select another sheet
ThisWorkbook.Sheets("Sheet2").Select
'With the Sheet not being active you don't need to unprotect it
'because the password is not applied.
MySheet.Copy After:=Sheets(2)
'Note that the Copied Sheets will be protected with the
'same password used for the original sheet, and this Only applies with access through VBA.
End Sub
如果还有其他问题需要解释或是否有效,请告诉我。