Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为使用ExcelPackage创建的Excel单元格设置货币格式_C#_Excel_Excelpackage - Fatal编程技术网

C# 为使用ExcelPackage创建的Excel单元格设置货币格式

C# 为使用ExcelPackage创建的Excel单元格设置货币格式,c#,excel,excelpackage,C#,Excel,Excelpackage,如何为使用创建的Excel单元格设置货币格式 ExcelPackage将读取单元格上的数字格式。因此,您只需在Excel中制作一个示例,然后读取单元格,并查看所需操作的格式 下面是三种不同货币格式的示例。请注意最后一个“硬编码”字符$,这可能不是最佳做法 using (ExcelPackage excelPackage = new ExcelPackage(new FileInfo("testReport.xlsx"))) { ExcelWorksheet ws = excelPackage

如何为使用创建的Excel单元格设置货币格式


ExcelPackage将读取单元格上的数字格式。因此,您只需在Excel中制作一个示例,然后读取单元格,并查看所需操作的格式

下面是三种不同货币格式的示例。请注意最后一个“硬编码”字符$,这可能不是最佳做法

using (ExcelPackage excelPackage = new ExcelPackage(new FileInfo("testReport.xlsx")))
{
  ExcelWorksheet ws = excelPackage.Workbook.Worksheets.Add("worksheet");

  ws.Cells[1, 1, 3, 1].Value = 0d;
  ws.Cells[1, 2, 3, 2].Value = -14.957d;
  ws.Cells[1, 3, 3, 3].Value = 5000000.00d;
  ws.Cells[1, 4, 3, 4].Value = -50000000000.00d;
  ws.Cells[1, 1, 1, 4].Style.Numberformat.Format = "#,##0.00;(#,##0.00)";
  ws.Cells[2, 1, 2, 4].Style.Numberformat.Format = "#,##0.00;-#,##0.00";
  ws.Cells[3, 1, 3, 4].Style.Numberformat.Format = "\"$\"#,##0.00;[Red]\"$\"#,##0.00";
  ws.Cells[1, 1, 3, 4].AutoFitColumns();

  excelPackage.Save();
}

这将在您的speadsheet中创建$1.50作为一个数字

工作表中有一个Cells属性,请再次检查您的代码。对于其他人,这些格式将确保excel中的格式下拉列表显示“货币”、“数字”等,而不是“自定义”
using (ExcelPackage excelPackage = new ExcelPackage(new FileInfo("testReport.xlsx")))
{
  ExcelWorksheet ws = excelPackage.Workbook.Worksheets.Add("worksheet");

  ws.Cells[1, 1, 3, 1].Value = 0d;
  ws.Cells[1, 2, 3, 2].Value = -14.957d;
  ws.Cells[1, 3, 3, 3].Value = 5000000.00d;
  ws.Cells[1, 4, 3, 4].Value = -50000000000.00d;
  ws.Cells[1, 1, 1, 4].Style.Numberformat.Format = "#,##0.00;(#,##0.00)";
  ws.Cells[2, 1, 2, 4].Style.Numberformat.Format = "#,##0.00;-#,##0.00";
  ws.Cells[3, 1, 3, 4].Style.Numberformat.Format = "\"$\"#,##0.00;[Red]\"$\"#,##0.00";
  ws.Cells[1, 1, 3, 4].AutoFitColumns();

  excelPackage.Save();
}
ExcelPackage package = new ExcelPackage();
ExcelWorksheet worksheet = package.Workbook.Worksheets.Add("Sheet1");
worksheet.Cells[1, 1].Value = 1.50;
worksheet.Cells[1, 1].Style.Numberformat.Format = "$0.00";