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

rac*_*ach 10 c# epplus

我想将值转换为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)

请帮忙.

rac*_*ach 18

我找到了!

我试过了

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

  • 仅在“ 0.00%”时有效。所以没有'#'也没有'\'。否则,该值将被除以100,这样存储的值和显示的值将不同。 (3认同)

TsT*_*ime 10

正确的公式如下:

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

当您尝试稍后扩展小数位时,"#0 \\.00%"中的双斜线会导致非常不寻常的数字

  • 唯一的问题是,如果您已有百分比值,则需要将其除以 100,以便在 Excel 中打开工作表时正确显示。 (2认同)