我有一个Excel电子表格,它将保存在网络共享驱动器上。我的Winforms C# 3.0应用程序需要访问它(可能会有多个用户同时使用该应用程序并访问此电子表格)。其中一个工作表上有很多数据,这些数据被分为我已命名为范围的区域。我需要能够单独访问这些范围,将每个范围作为数据集返回,然后将其绑定到网格中。
我找到了一些使用OLE的示例,并使其正常工作。但是,我看到了一些关于使用此方法的警告,并且在工作中,到目前为止我们一直在使用Microsoft.Office.Interop.Excel作为标准。除非必须,否则我不想离开这个标准。据我所知,我们的用户将使用Office 2003及更高版本。
我可以使用以下代码获取所需的范围:
我找到了一些使用OLE的示例,并使其正常工作。但是,我看到了一些关于使用此方法的警告,并且在工作中,到目前为止我们一直在使用Microsoft.Office.Interop.Excel作为标准。除非必须,否则我不想离开这个标准。据我所知,我们的用户将使用Office 2003及更高版本。
我可以使用以下代码获取所需的范围:
MyDataRange = (Microsoft.Office.Interop.Excel.Range)
MyWorkSheet.get_Range("MyExcelRange", Type.Missing);
OLE的方式很好,因为它会将我的第一行转换为列。我的范围(共12个)在大多数情况下在列数上不同。不知道这些信息是否会影响任何建议。
有没有办法使用Interop并将返回的范围放回数据集中?