NPOI не применяет формат к .xls - PullRequest
0 голосов
/ 28 февраля 2020

C#, NPOI

Добрый вечер, я пытаюсь заполнить пустой шаблон значениями (числа, но в строковой переменной), которые должны быть в ячейках.

Итак, когда дело дошло до форматирования, я увлекся стилем. Это означает, что когда я записываю значение внутри (в предварительно отформатированную ячейку), я получаю только строковое значение, которое было в массиве.

Но, когда я открываю файл, нажимаю «изменить ячейку», затем применяю без любые изменения, затем ячейка форматируется, с форматом, который был в шаблоне

Я пытался применить предыдущий стиль в ячейке (в основном просто скопировать стиль в var, перед установкой значения, затем повторно применить стиль) , но это не помогло.

Здесь - видео моих поступков

var cr = new CellReference(cellAndValue[i, 0]);
var row = sheet?.GetRow(cr.Row);
var cell = row?.GetCell(cr.Col);
var prevtype = cell.CellType;
var prevstyle = cell.CellStyle;
var dataformat = cell.CellStyle.DataFormat;
CellType type = cell.CellType;
cell.SetCellValue(cellAndValue[i, 0]);

Как это решить?)

1 Ответ

0 голосов
/ 05 марта 2020

Требовалось преобразовать входящие данные в int, прежде чем вставлять их XD

int n;
if (Int32.TryParse(cellAndValue[i, 1], out n))
{
    cell.SetCellValue(n);
}
else
{
    cell.SetCellValue(cellAndValue[i, 1]);
}
...