c# – 使用OpenXML将%数字格式应用于单元格值
发布时间:2020-12-16 01:22:00 所属栏目:百科 来源:网络整理
导读:我想使用开放的 XML C#应用%(百分比)数字格式 我有数值3.6,我想在Excel中显示该数字为3.6%. 我如何实现这一目标? 解决方法 WorkbookStylesPart sp = workbookPart.AddNewPartWorkbookStylesPart(); 创建样式表, sp.Stylesheet = new Stylesheet(); 创建一
我想使用开放的
XML C#应用%(百分比)数字格式
我有数值3.6,我想在Excel中显示该数字为3.6%. 我如何实现这一目标? 解决方法WorkbookStylesPart sp = workbookPart.AddNewPart<WorkbookStylesPart>(); 创建样式表, sp.Stylesheet = new Stylesheet(); 创建一个编号格式, sp.Stylesheet.NumberingFormats = new NumberingFormats(); // #.##% is also Excel style index 1 NumberingFormat nf2decimal = new NumberingFormat(); nf2decimal.NumberFormatId = UInt32Value.FromUInt32(3453); nf2decimal.FormatCode = StringValue.FromString("0.0%"); sp.Stylesheet.NumberingFormat.Append(nf2decimal); 创建单元格格式并应用编号格式ID cellFormat = new CellFormat(); cellFormat.FontId = 0; cellFormat.FillId = 0; cellFormat.BorderId = 0; cellFormat.FormatId = 0; cellFormat.NumberFormatId = nf2decimal.NumberFormatId; cellFormat.ApplyNumberFormat = BooleanValue.FromBoolean(true); cellFormat.ApplyFont = true; //append cell format for cells of header row sp.Stylesheet.CellFormats.AppendChild<CellFormat>(cellFormat); //update font count sp.Stylesheet.CellFormats.Count = UInt32Value.FromUInt32((uint)sp.Stylesheet.CellFormats.ChildElements.Count); //save the changes to the style sheet part sp.Stylesheet.Save(); 当您将值附加到单元格时,具有以下中心代码hereonversion并应用样式索引 string val = Convert.ToString(Convert.ToDecimal(value)/100); Cell cell = new Cell(); cell.DataType = new EnumValue<CellValues>(CellValues.Number); cell.CellValue = new CellValue(val); cell.StyleIndex = 2; row.Append(cell); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |