如何使用Microsoft.Interop Excel从MS Excel访问OLE对象

我正在尝试访问一个OLE对象(embedded到Excel工作表中)的报表。

我正在尝试使用Microsoft.Interop.Excel API从C#控制台应用程序执行此操作。

我成功地能够遍历工作表中存在的OLE对象。 但是,当我尝试访问OLEObject实例的对象属性,我得到一个COMexception。

有没有人尝试过之前成功。 请帮助我的示例代码。

代码我尝试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; } } 

提前致谢..