我有一个存储在数据库中的格式化模板。
在构建和打开Excel之后,单元格具有格式,但它没有像它应该那样格式化。 示例:该字段在此模板中查找。 1234.56 $,但知道它看起来像这个1234.56。所以$缺失了。 第二个例子。 12%看起来像,但知道它看起来像11.9999999997%
我输入的值是准确的值。比如1234.56和11.9999999997%所以如果我把它们手动放在generatet excle中,它会在格式化过程中变差,但在创建阶段却不会。
有没有人有一些想法?
我的插入陈述
public static void InsertRows(List<ExcelRow> rowDefinitions, Stream template, string sheetName)
{
using (SpreadsheetDocument doc = SpreadsheetDocument.Open(template, true))
{
// tell Excel to recalculate formulas next time it opens the doc
doc.WorkbookPart.Workbook.CalculationProperties.ForceFullCalculation = true;
doc.WorkbookPart.Workbook.CalculationProperties.FullCalculationOnLoad = true;
foreach (var rd in rowDefinitions)
{
// first get the context (WS + SheetData)
var ws = GetWorksheetPart(doc.WorkbookPart, sheetName);
var sheetData = ws.Worksheet.Descendants<SheetData>().First();
var nr = CreateRow((uint)rd.RowIndex, sheetData);
foreach (var cd in rd.Cells)
{
var c = EnsureCell(nr, cd.ColumnName);
SetCellValue(cd.CellText, c, doc.WorkbookPart.SharedStringTablePart);
}
}
doc.WorkbookPart.Workbook.Save();
}
}