在Excel中读取一些行
当我尝试读取Excel文档的特定行时遇到一些问题。
我的实现是在这里: 阅读Excel中的C#,其中一些列是空的 。 你怎么看,整个Excel都被带入了一个DataTable。
现在我想得到一个特定的n值范围:
我认为是DataTable的问题…我想也许我应该获得另一个DataTable …也许使用另一个不同的查询?
看来你正在使用一个固定的模板,所以你可以解决在不同的范围使用不同的查询。
要select一个特定的范围,你可以使用这个查询:
string query = "SELECT * FROM [YourSheet$B58:D70]";
如果您知道范围的起始位置,但不知道行数,则可以使用以下语法:
string query = "SELECT * FROM [YourSheet$B58:D]";
在连接string中使用HDR=NO
并更改起始行,可以使用此查询来简化您的下一个操作:
SELECT [F1] AS Compagnia, [F2] AS Agenzia, [F3] AS DataSinistro FROM [YourSheet$B59:D]
请记住,您也可以使用WHERE筛选结果或排除空行; 即:
SELECT [F1] AS Compagnia, [F2] AS Agenzia, [F3] AS DataSinistro FROM [YourSheet$B59:D] WHERE [F3] IS NOT NULL