如何使用OLEDB从Excel文件(2007格式)读取多于256列

我试图用C#中的OLEDB导入超过256列的Excel文件。 我尝试了各种各样的东西,但是从excel(2007格式)文件读取超过256列似乎是不可能的。 我想知道如果这是一个错误,或者我只是失去了一些东西。 这是我使用的连接string:

Provider = Microsoft.ACE.OLEDB.12.0; Data Source = c:\ myFolder \ myExcel2007file.xlsx; Extended Properties =“Excel 12.0

这是Jet OLEDB驱动程序的限制。 一个可能工作的解决scheme(即我没有尝试过)将分解成不超过255列的命名范围,并分别查询每个(例如Select * From RangeName ),然后合并结果到一个DataTable。

使用Oledb导入超过256列的Excel文件是不可能的。 Oledb将只返回前255列。

请使用ExcelDataReader DLL。 这是一个轻量级开源库,用于在.NET中读取Microsoft Excel文件。

这里是代码参考ondrive链接:欢呼!

https://onedrive.live.com/?id=4B1F6C3E92F6522C%21257&cid=4B1F6C3E92F6522C&group=0&parId=4B1F6C3E92F6522C%21125&authkey=%21AMbQad-vwusjl-4&o=OneUp