1

我正在尝试获取特定列的最后使用行数,但只能获取占用的最大行数。测试数据显示在附加的快照中。请帮忙。按扣附在此处

        SpreadsheetInfo.SetLicense("FREE-LIMITED-KEY");
        ExcelFile ef = ExcelFile.Load("test.xlsx");

        CellRange rcount = ef.Worksheets[0].Columns[1].Cells;
        Console.WriteLine(ef.Worksheets[0].Rows.Count);


        ef.Save("test.xlsx");
        Console.ReadKey();  
4

1 回答 1

1

单元格在内部按行而不是按列分配。换句话说,您可以使用ExcelRow.AllocatedCells.Count.

要获取特定列中最后使用的行,您可以使用以下内容:

ExcelFile ef = ExcelFile.Load("test.xlsx");
ExcelWorksheet ws = ef.Worksheets[0];

ExcelColumn column = ws.Columns[1];
int rowIndex = ws.Rows.Count - 1;

while (rowIndex >= 0 && column.Cells[rowIndex].ValueType == CellValueType.Null)
    --rowIndex;

Console.WriteLine(rowIndex);

我希望这有帮助。

于 2016-06-19T05:12:48.397 回答