ワークシート上でデータが存在している最終行・最終列の特定は、次のコードで行うことができます。

/*
 * ワークシート上の、最終セル(値の存在する最終セル)の位置を特定する。
 */
private (int, int) GetLastCellInfo(Workbook wb)
{
    int maxRow = 0;
    int maxCol = 0;

    foreach(var row in wb.Worksheets[0].Rows)
    {
        foreach(var cell in row.Cells)
        {
            if (cell.Value != null)
            {
                maxRow = cell.RowIndex;
                maxCol = Math.Max(maxCol, cell.ColumnIndex);
                Debug.WriteLine("maxRow: " + maxRow);
                Debug.WriteLine("maxCol: " + maxCol);
            }
        }
    }

    return (maxRow, maxCol);
}

上記コードを利用して、次のように最終行・最終列のセルに値を書き込むことができます。

...
if (employeeSheet.Rows.Count() > 0)
{
    var info = this.GetLastCellInfo(wb);
    employeeSheet.Rows[info.Item1].SetCellValue(info.Item2, 11111);
}
...

実行結果

Tagged:

製品について

Ignite UI for Blazor