c# – 为什么不能从Excel互操作设置一个对象?
试图获得工作表的引用(使用Excel interop):
Excel.Application xl = new Excel.ApplicationClass(); Excel.Workbooks xlWorkBooks = xl.Workbooks; Excel.Workbook xlWorkBook = xlWorkBooks.Open(fileName,false,5,"",true,Excel.XlPlatform.xlWindows,"t",1,0); // Next line crashes Excel.Worksheets xlWorkSheets = (Excel.Worksheets) xlWorkBook.Worksheets; 错误是它不能转换它:
我的演员是不正确的吗? 解决方法
是的,你的演员错了.
_Workbook.Sheets给你一个Sheets实例.此界面为您提供所有类型的工作表,而不仅仅是工作表;主要包括图表,宏图等. 另一方面,Worksheets界面只给你工作表 – 而不是图表. 接口不能彼此分配;因此,您会收到COM错误.这是令人困惑的 – 我甚至不确定是否可以通过PIA获得工作表接口的实例 – 但是这是Office的Interop for ya. 只要您使用_Workbook.Worksheets属性而不是_Workbook.Sheets属性,您应该得到一个仅返回Worksheet对象的表单实例,尽管该接口能够提供其他类型的工作表. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |