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