我想将值转换为2位小数.我正在使用EPPlus, 如果值为66.6666667,我想将其显示为66.66% 我尝试了以下代码,但它不起作用.
foreach (var dc in dateColumns)
{
sheet.Cells[2, dc, rowCount + 1, dc].Style.Numberformat.Format = "###,##%";
}
Run Code Online (Sandbox Code Playgroud)
请帮忙.
我有以下代码,它没有将值保存到单元格和文件中。它显示了cell.cellvalue字段中的价值,但它没有将其写入excel。我不知道如何保存文件。我使用OpenXml-SDK并将datatable值写入每个cell/row创建的电子表格文档。
using (SpreadsheetDocument ssd=SpreadsheetDocument.Open(Server.MapPath(@"\ExcelPackageTemplate.xlsx"),true))
{
WorkbookPart wbPart = ssd.WorkbookPart;
WorksheetPart worksheetPart = wbPart.WorksheetParts.First();
SheetData sheetdata = worksheetPart.Worksheet.GetFirstChild<SheetData>();
string[] headerColumns = new string[] { dt.Columns[0].ColumnName, dt.Columns[1].ColumnName,dt.Columns[2].ColumnName };
DocumentFormat.OpenXml.Spreadsheet.Row r = new DocumentFormat.OpenXml.Spreadsheet.Row();
int RowIndexer = 1;
//int colInd=0;
r.RowIndex = (UInt32)RowIndexer;
string test = ColumnName(RowIndexer);
foreach (DataColumn dc in dt.Columns)
{
DocumentFormat.OpenXml.Spreadsheet.Cell cell = new DocumentFormat.OpenXml.Spreadsheet.Cell();
cell.CellReference = test+RowIndexer;
cell.DataType = CellValues.InlineString;
cell.InlineString = new InlineString(new Text(dc.ColumnName.ToString()));
DocumentFormat.OpenXml.Spreadsheet.CellValue value = new DocumentFormat.OpenXml.Spreadsheet.CellValue();
r.AppendChild(cell); …Run Code Online (Sandbox Code Playgroud)