C# 使用epplus将Excel单元格转换为百分比

C# 使用epplus将Excel单元格转换为百分比,c#,epplus,C#,Epplus,我想将数值转换为小数点后2位。我正在使用EPPlus 如果值为66.666666 7,我想将其显示为66.66% 我尝试了以下代码,但不起作用 foreach (var dc in dateColumns) { sheet.Cells[2, dc, rowCount + 1, dc].Style.Numberformat.Format = "###,##%"; } 请帮忙。我找到了 foreach (var dc in dateColumns) {

我想将数值转换为小数点后2位。我正在使用EPPlus 如果值为66.666666 7,我想将其显示为66.66% 我尝试了以下代码,但不起作用

   foreach (var dc in dateColumns)
   {
       sheet.Cells[2, dc, rowCount + 1, dc].Style.Numberformat.Format = "###,##%";
   }
请帮忙。

我找到了

   foreach (var dc in dateColumns)
   {
       sheet.Cells[2, dc, rowCount + 1, dc].Style.Numberformat.Format = "###,##%";
   }
我试过了

   foreach (var dc in dateColumns)
   {
       sheet.Cells[2, dc, rowCount + 1, dc].Style.Numberformat.Format = "###,##%";
   }
 foreach (var dc in dateColumns)
  {
    sheet.Cells[2, dc, rowCount + 1, dc].Style.Numberformat.Format ="#0\\.00%";
   }

据我所知,您通过epp设置的格式只是一种常见的Excel单元格格式

   foreach (var dc in dateColumns)
   {
       sheet.Cells[2, dc, rowCount + 1, dc].Style.Numberformat.Format = "###,##%";
   }

对我来说,这真的很有帮助

正确的公式如下:

   foreach (var dc in dateColumns)
   {
       sheet.Cells[2, dc, rowCount + 1, dc].Style.Numberformat.Format = "###,##%";
   }
 foreach (var dc in dateColumns)
  {
    sheet.Cells[2, dc, rowCount + 1, dc].Style.Numberformat.Format ="#0.00%";
  }

“0\\.00%”中的双斜杠在以后尝试扩展小数位时会导致非常不寻常的数字

如果要在单元格范围内执行此操作。你可以用

   foreach (var dc in dateColumns)
   {
       sheet.Cells[2, dc, rowCount + 1, dc].Style.Numberformat.Format = "###,##%";
   }
using (ExcelRange Rng = wsDashboard.Cells["B6:J6"])
{
    Rng.Style.Numberformat.Format = "#0\\.00%";
}

只有“0.00%”时,它才起作用。所以没有“#”和“\”。否则,该值将除以100,这样存储的值和显示的值就不一样了。唯一的问题是,如果您已经将该值作为百分比,则需要将其除以100,以便在excel中打开工作表时正确显示该值。