C# Excel 数字格式作为巴西货币

Posted

技术标签:

【中文标题】C# Excel 数字格式作为巴西货币【英文标题】:C# Excel number format as Brazilian currency 【发布时间】:2017-07-17 13:30:46 【问题描述】:

我正在尝试将数据表的一列格式化为巴西货币格式,如下所示:

excelWorksheet.Range["S1", "S" + linhas].NumberFormat = "R$ #.###,00"

但它的格式是这样的:“RR$ 3500,00”。

值是 3500,我想要这样:R$ 3.500,00

谢谢

【问题讨论】:

在 Excel 中直接使用该格式作为自定义格式(在 C# 之外)会发生什么情况? 它有效。我想做同样的事情,就像我把货币格式化一样。 能否附上 Excel 中数据的截图? (无论是直接在 Excel 中应用该格式,还是从您的应用中应用该格式) 不,这里我们使用点作为千位分隔符:R$ 3.500,00 你不应该使用“$#,###.00”吗?从我的头顶上“。”表示小数分隔符,“,”表示千位分隔符。它应该由区域设置中的实际分隔符替换。在您的情况下,“$”也是设置为 R$ 的货币。这就是你得到双 R 的原因。 【参考方案1】:

你不应该使用“$#,##0.00”吗?

“。”表示小数点分隔符,“,”是千位分隔符。 Excel 应将它们替换为区域设置中的实际分隔符。在您的情况下,“$”也是设置为 R$ 的货币。这就是你得到双 R 的原因。

更多信息请参见Custom Number Format Strings。

【讨论】:

以上是关于C# Excel 数字格式作为巴西货币的主要内容,如果未能解决你的问题,请参考以下文章

数字应格式化为 excel 中的数字,而不是文本 C#

Excel excel函数参数中的range和reference有啥区别

Excel:格式化数字 - 缩短数字/删除数字

通过 C# 在 Excel 中给出数字格式

C# Excel.Interop 数字格式

如何应用动态数字格式?