ワークシート上でデータが存在している最終行・最終列の特定は、次のコードで行うことができます。
/*
* ワークシート上の、最終セル(値の存在する最終セル)の位置を特定する。
*/
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);
}
...
実行結果
