VBA擅长保护床单

时间:2016-09-23 15:10:53

标签: excel vba excel-vba

我创建了一个电子表格,在Workbook Open Event中我创建了一个名为“Hello”的工作表。这完全没问题。当我使用密码保护WORKBOOK的结构时出现问题。现在,当我打开我的工作簿并尝试将工作表添加到工作簿时,应用程序在我添加工作表的这行代码中给出了错误。我的所有代码都在

之下
 Private Sub Workbook_Open()
 Dim ws As Worksheet
 Dim i As Integer
 Dim isHELLOexist As Boolean
 isHELLOexist = False
 For i = 1 To Worksheets.Count
     If Worksheets(i).Name = "HELLO" Then
         isHELLOexist = True
     End If
 Next i

 If isHELLOexist = False Then
     Set ws = Sheets.Add '''here's where i get an error with ADDING sheet
     ws.Name = "HELLO"
 End If
 End Sub

现在只要工作簿的STRUCTURE不受密码保护,此代码就可以正常工作。我该怎么做才能让它发挥作用?

错误说明:

  

方法表的添加失败错误1004

1 个答案:

答案 0 :(得分:1)

想出来....我首先需要取消保护工作簿,添加工作表并再次保护它......

thisworkbook.unprotect("password")
If isHELLOexist = False Then
     Set ws = Sheets.Add '''here's where i get an error with ADDING sheet
     ws.Name = "HELLO"
End If
thisworkbook.protect("password"),true,true