c# - 如何在 EpPlus 中更改十进制数的格式?

标签 c# excel numbers decimal epplus

我的办公室 Excel 是法语格式的(小数点分隔符 = 点,千位分隔符 = 空格) 我加载了一张带有法语格式十进制数的 csv 文件的工作表:

我的代码:

var range = sheet.Cells["A3"].LoadFromText(new FileInfo(fileCSVFull), format, TableStyles.Medium27, true);
var numStyle = package.Workbook.Styles.CreateNamedStyle("TableNumber");
numStyle.Style.Numberformat.Format = "# ##0,00";

var tbl = sheet.Tables[0];
tbl.ShowTotal = true;
tbl.Columns[0].TotalsRowLabel = "Total";

tbl.Columns[1].TotalsRowFunction = RowFunctions.Sum;
tbl.Columns[1].DataCellStyleName = "TableNumber";
tbl.Columns[2].TotalsRowFunction = RowFunctions.Sum;
tbl.Columns[2].DataCellStyleName = "TableNumber";
tbl.Columns[3].TotalsRowFunction = RowFunctions.Sum;
tbl.Columns[3].DataCellStyleName = "TableNumber";

string numcell = "E4:E"+(3 + nbline); 
sheet.Cells[numcell].Formula = "B4*C4";
sheet.Cells[numcell].StyleName = "TableNumber";

sheet.View.ShowGridLines = false;
sheet.Calculate();
sheet.Cells[sheet.Dimension.Address].AutoFitColumns();

但是我在“sheet.Calculate();”上有一个异常(exception) 如果我更改我的十进制数的格式,那很好,我的 XLSX 文件生成了,但是当我打开 Excel 时出现错误,因为我的法语版 Excel 无法识别我的十进制格式。

最佳答案

我遇到了类似的问题。将格式字符串设置为 "#,##0.00" 在我的案例中起到了作用。

关于c# - 如何在 EpPlus 中更改十进制数的格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30349902/

相关文章:

c# - 旋转时关闭键盘

c# - 如何扩展 Entity Framework 6.1.3 生成的类?

c# - 当 ExecuteScalar 工作正常时,为什么 ExecuteReader 会崩溃读取某些记录的特定数据字段?

excel - 使用 Excel VBA 在 excel 单元格中创建多个换行符

excel - 计算切片器中选择的元素

regex - 匹配负/正 float/int 正则表达式 - 这是邪恶的吗?

c# - 如何使用 ClearCanvas 更改 Dicom 文件的 VR 标签

c# - Excel 添加编程

javascript - localstorage 在 localstorage[key] += 1 上返回 11

Javascript:添加两个二进制数(返回二进制)