我尝试打开受密码保护的
以下代码可以工作,但会提示输入密码。
.xlsx
文件(Excel 2007格式),而不需要手动输入密码。我已经安装了Excel 2003和Microsoft Office兼容性包,在打开文件时会进行转换。以下代码可以工作,但会提示输入密码。
Microsoft.Office.Interop.Excel.Application ExcelApp;
Microsoft.Office.Interop.Excel.Workbook ExcelWorkbook;
ExcelApp = new Microsoft.Office.Interop.Excel.Application();
Object pwd = "xxx";
Object MissingValue = System.Reflection.Missing.Value;
ExcelWorkbook = ExcelApp.Workbooks.Open("C:\\temp\\test.xlsx",MissingValue, MissingValue, MissingValue,pwd);
如果我使用相同的代码打开.xls
文件(Excel 2003),则可以在不提示密码的情况下正常工作。打开没有密码保护的.xlsx
文件也没有问题。
如何使用 Excel 2003 和 Microsoft Office 兼容性包打开受密码保护的.xlsx
文件而无需提示输入密码?
从类似问题的讨论中可以找到解决方法,将只读参数(第三个参数)改为 true 即可。
ExcelWorkbook = ExcelApp.Workbooks.Open("C:\\temp\\test.xlsx",MissingValue, true, MissingValue,pwd);
这里不起作用。
Open
时指定了进一步的“MissingValue”参数。你尝试过添加与该问题/答案中相同数量的参数吗? - ChrisF