我正在尝试访问作为 OLE 对象的报告(嵌入到 Excel 工作表中)。
我正在尝试使用 Microsoft.Interop.Excel API 从 C# 控制台应用程序执行此操作。
我能够成功地遍历工作表中存在的 OLE 对象。但是,当我尝试访问 OLEObject 实例的Object属性时,我遇到了 COM 异常。
有没有人在成功之前尝试过这样做。请帮助我提供示例代码。
我为 POC 尝试的代码如下
static void Main(string[] args)
{
string fileName = string.Empty // some excel file path
Application _excelApp = new Application();
_excelApp.AutomationSecurity = MsoAutomationSecurity.msoAutomationSecurityForceDisable;
Workbook workBook = _excelApp.Workbooks.Open(fileName,
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);
for (int i = 1; i <= workBook.Sheets.Count; i++)
{
var sheet = workBook.Sheets[i] as Worksheet;
try
{
OLEObject obj = sheet.OLEObjects("BReport") as OLEObject;
Console.WriteLine(obj.Name);
Console.WriteLine(obj.Object.ToString());
}
catch
{
continue;
}
}
提前致谢..