ClosedXML 查找最后一行号

ClosedXML find last row number

我在 C# 中使用 ClosedXML 来修改 Excel 工作簿。我需要找到最后使用的行号,但 .RowCount() 计算工作表中有多少行。所以当只有几千行时,它是 returning 100 万行。我试过 LastRowUsed() 但那不是 return int 并且没有 .row 方法。如何获取 int 中的最后一行?

你必须使用.LastRowUsed()

来自 official GitHub repo 的更多有用内容:

range.FirstCell()
range.FirstCellUsed()
range.FirstColumn()
range.FirstColumnUsed()
range.FirstRow()
range.FirstRowUsed()

range.LastCell()
range.LastCellUsed()
range.LastColumn()
range.LastColumnUsed()
range.LastRow()
range.LastRowUsed()

您可以使用 RowsUsed();

var wb = new XLWorkbook();
    var ws = wb.worksheets.add("data");
    var totalRows = ws.RowsUsed().Count();

LastRowUsed()函数returns一个行对象。使用

worksheet.LastRowUsed().RowNumber()

获取最后使用的行数。

我使用了这个代码

libro = new XLWorkbook("file.xlsx");
hoja = libro.Worksheet(1);
var primeraCeldaUsada = hoja.FirstCellUsed();
var ultimaCeldaUsada = hoja.LastCellUsed();
var rango = hoja.Range(primeraCeldaUsada.Address, ultimaCeldaUsada.Address);
int ultfila = int.Parse(ultimaCeldaUsada.Address.RowNumber.ToString());
for (int i = 7; i <= ultfila; i++)
    {
    hoja.Cell(i, 3).Value = hoja.Cell(i, 3).Address.ToString();
    }