Код:
using (var deststream = new FileStream(@"Template.xlsx", FileMode.Open, FileAccess.ReadWrite))
{
var workbook = new XSSFWorkbook(deststream);
workbook.GetSheet("Data").GetRow(1).GetCell(1).SetCellValue(20);
workbook.GetSheet("Data").GetRow(9).CreateCell(4).SetCellValue("Sahaj");
workbook.GetSheet("Data").GetRow(9).CreateCell(5).SetCellValue("anand");
//Not working below formula evaluator method 1
workbook.GetCreationHelper().CreateFormulaEvaluator().EvaluateAll();
//Not working below formula evaluator method 2
XSSFFormulaEvaluator.EvaluateAllFormulaCells(workbook);
using (FileStream file = new FileStream(@"Output.xlsx", FileMode.Create))
{
workbook.Write(file);
}
}
Файл шаблона Excel
Исходя из вышеизложенного, я могу создать лист Excel из файла шаблона, но получить ошибку вычисления ниже, когдаopen output.xlsx.
Ошибка в выходном файле при открытии после создания из файла шаблона.![Error in output file when open after generated from template file](https://i.stack.imgur.com/Dbrri.png)
Формула в файле шаблона, которая удаляется в выходном листе после использования средства оценки формул ![Formula in Template file which is removed in output sheet after use of formula evaluator](https://i.stack.imgur.com/Pg1IC.png)
Я использовал средство оценки формулкак описано в документация npoi .
Когда я удаляю код оценки формулы из метода, тогда я могу видеть формулу как в шаблоне Excel, так и в выводе.
Так это ошибка NPOI или что-то еще?Пожалуйста, помогите мне разобраться с этим.
Есть ли здесь кто-нибудь, кто знает правильный способ использования формулы формулы?Я не хочу удалять формулу после расчета ее с листа.