取消保护excel工作簿#2

我有一个密码保护密码。 我想添加一个macros到这个excel ..我的代码是

oBook = oExcel.Workbooks.Open(FileName, 0, false, 5, "xyz", "", false, Excel.XlPlatform.xlWindows, "", true, false, 0, true); //oModule = oMOD.VBComponents("ThisWorkbook"); oBook.Unprotect("xyz"); // Create a new VBA code module. oModule = oBook.VBProject.VBComponents.Add(VBIDE.vbext_ComponentType.vbext_ct_StdModule); oModule.CodeModule.AddFromString(sCode); 

当我运行这个我得到这个错误“不能执行操作,因为该项目被保护”。

任何帮助如何摆脱这个错误

我遇到了类似的问题。 找不到解决scheme,但find了解决方法:

尝试切换应用程序的Visibility属性

 oBook = oExcel.Workbooks.Open(FileName, 0, false, 5, "xyz", "", false, Excel.XlPlatform.xlWindows, "", true, false, 0, true); oExcel.Visible= true; oExcel.Visible = false; oBook.Unprotect("xyz"); 

我真的不知道它是如何工作的(看起来像一个bug),但是这两行简单的代码可以帮助我解决问题。