Добрый вечер, недавно я пытался обновить значение ячейки в файле .xls, используя библиотеку NPOI (C#), но, когда я делаю это с cell.SetCellValue("anyvalue");
,
, я вижу изменения только в некоторых клетках. Остальные ячейки просто пусты.
Пытался сохранить стиль ячейки и переписать его, используя cell.CellStyle
, но все тот же.
Вообще говоря, я получаю только половину значений, которые должны быть заполнены местами.
Используя этот код, где nameAndValues [0] содержит имя ячейки, а nameAndValues [1] содержит его значение.
using (FileStream rstr = new FileStream(currentPath + $"/{excelName}", FileMode.Open, FileAccess.Read))
{
var workbook = new HSSFWorkbook(rstr);
var sheet = workbook.GetSheetAt(0);
using (FileStream wstr = new FileStream(currentPath + $"/{excelName}", FileMode.Open, FileAccess.Write))
{
for (int i = 0; i < values.Count; i++)
{
var cr = new CellReference(namesAndValue[i, 0]);
var row = sheet.CreateRow(cr.Row);
var cell = row.CreateCell(cr.Col);
cell.SetCellValue(namesAndValue[i, 1]);
}
workbook.Write(wstr);
wstr.Close();
}
rstr.Close();
}