VSTO中的SpecialCells

时间:2020-03-05 18:50:01  来源:igfitidea点击:

我正在尝试使用cagainst 3.5框架和Excel2007在VSTO项目中使用SpecialCells方法。

这是我的代码:

Excel.Worksheet myWs = (Excel.Worksheet)ModelWb.Worksheets[1];

Range myRange = myWs.get_Range("A7", "A800");

//Range rAccounts = myRange.SpecialCells(XlCellType.xlCellTypeConstants, XlSpecialCellsValue.xlTextValues);

Range rAccounts = myWs.Cells.SpecialCells(XlCellType.xlCellTypeConstants, XlSpecialCellsValue.xlTextValues);

当我运行它时,它会引发异常。

System.Exception._COMPlusExceptionCode with a value of -532459699

请注意,如果我在上面的Range rAccounts行中切换(取消注释并评论另一条注释),则会遇到相同的异常。

解决方案

回答

我想到了...
工作表受到保护!

myWs.Unprotect(Properties.Settings.Default.PasswordSheet);

修复它...对于那些在家中玩耍的人...完成后别忘了保护床单。

myWs.Protect(Properties.Settings.Default.PasswordSheet, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);