我正在努力解决一个简单的问题,但我无法弄清楚。
我有一个 excel 文档,我用它做一些处理(使用 NetOffice API)。这工作正常,但我想在处理后更改行颜色,因此范围内的每一行在处理后应该具有相同的颜色。
我得到一个带有以下代码的 COMException (HRESULT: 0x800A03EC):
foreach (Excel.Range row in rg)
{
//do the processing...
...
row.Interior.Color = XlRgbColor.rgbAliceBlue;
}
我还用谷歌搜索了这个 HRESULT 并尝试在 Open() 方法中通过将 readOnly 设置为 false 和可编辑以及将损坏负载设置为 true 来解决问题。那没有用。我还尝试将交互属性设置为 true 并以不同格式(.xls、.xlsx)保存 excel 文件,但没有任何结果。
我发现 excelfile/工作簿受到保护。所以我试着像这样解除对 ActiveWorkbook 的保护
app.ActiveWorkbook.Unprotect();
但这也出错并引发了一个 COMException,即无法分配 Workbook 对象的 unprotect-property。
我希望有人可以帮助我。
提前致谢,
科德尔