C#EPPlus OpenXML计数行

EPPlus和OpenXML有没有人知道如何计算行的语法?

说我的工作表被称为“工作表”

int numberRows = worksheet.rows.count() ? 或worksheet.rows.dimension

我对这个答案肯定很感兴趣,但是如何find答案会很酷,就像“去定义”一样寻找这个或那个,等等。

使用名为“工作表”的工作表对象,worksheet.Dimension.Start.Row和worksheet.Dimension.End.Row应该为您提供所需的信息。

worksheet.Dimension.Address将为您提供一个string,其中包含传统Excel范围格式的工作表维度(例如,第1-5行,第1-9列为“A1:I5”)。

有一个文件文件可用 。 在很多情况下,和图书馆一起玩就可以快速find答案。 EPPlus似乎devise得很好 – 至less所有东西都是按逻辑命名的。

感谢那个提示Quppa。 我用它来填充工作簿电子表格中的DataTable,如下所示:

  /// <summary> /// Converts a Worksheet to a DataTable /// </summary> /// <param name="worksheet"></param> /// <returns></returns> private static DataTable WorksheetToDataTable(ExcelWorksheet worksheet) { // Vars var dt = new DataTable(); var rowCnt = worksheet.Dimension.End.Row; var colCnt = worksheet.Dimension.End.Column + 1; // Loop through Columns for (var c = 1; c < colCnt; c++ ) { // Add Column dt.Columns.Add(new DataColumn()); // Loop through Rows for(var r = 1; r < rowCnt; r++ ) { // Add Row if (dt.Rows.Count < (rowCnt-1)) dt.Rows.Add(dt.NewRow()); // Populate Row dt.Rows[r - 1][c - 1] = worksheet.Cells[r, c]; } } // Return return dt; } 

我正在使用版本4.1,它看起来像他们已经添加了一些属性(在以前的答案评论中提到),使这更容易。

 string Filepath = "c:\excelfile.xlsx"; FileInfo importFileInfo = new FileInfo(FilePath); using(var excelPackage = new ExcelPackage(importFileInfo)) { ExcelWorksheet worksheet = excelPackage.Workbook.Worksheets[1]; int rowCount = worksheet.Dimension.Rows; int colCount = worksheet.Dimension.Columns; }