我有一个Excel电子表格,它将坐在网络共享驱动器上.它需要由我的Winforms C#3.0应用程序访问(许多用户可能正在使用该应用程序并同时点击此电子表格).一个工作表上有很多数据.这些数据分为我命名为范围的区域.我需要能够单独访问这些范围,将每个范围作为数据集返回,然后将其绑定到网格.
我找到了使用OLE并使这些工作正常的示例.但是,我看到有关使用此方法的一些警告,而且在工作中我们一直使用Microsoft.Office.Interop.Excel作为标准.除非必须,我真的不想偏离这个.据我所知,我们的用户将使用Office 2003.
我可以通过以下代码获得我需要的范围:
MyDataRange = (Microsoft.Office.Interop.Excel.Range)
MyWorkSheet.get_Range("MyExcelRange", Type.Missing);
Run Code Online (Sandbox Code Playgroud)
OLE方式很好,因为它需要我的第一行并将它们转换为列.我的范围(总共12个)在列数方面大部分彼此不同.不知道这些信息是否会影响任何建议.
有没有办法使用Interop并将返回的范围返回到数据集中?