在没有符号的Open XML中格式化欧洲货币数字格式的代码
我的应用程序是在C#MVC中开发的,我使用Open XML在Excel Sheet中导出网格数据。 网格有各种列,其中包含数量字段。 我在页面上有两个button,一个是北美格式的“NA”,另一个是欧洲格式的“EU”。 这两个button导出Excel表单。
当“NA”被按下时导出excel金额栏值转换为如下并运行良好 ,
1000000 ----------> 1,000,000 (Format Code used : #,##0)
但是,当“欧盟”被按下出口时,excel的数值并没有按照预期转换, 而是不起作用 。
1000000 ----------> 1000000.0 (Format Code used : #.##0)
在Open XML中,我将stylesheet.xml文件configuration为
<x:numFmt numFmtId="169" formatCode="[>=1000]#,##0" /> // This works <x:numFmt numFmtId="170" formatCode="[>=1000]#.##0" /> // This doesn't work
有没有人有任何build议来解决这个问题。 我甚至尝试通过自定义格式选项更改欧洲货币的Excel工作表单元格格式,但这也不起作用。
我预期的结果是我无法实现的。
1000000 -----------> 1.000.000
没有办法更改每个工作簿或每个工作表或每个单元格区域的十进制/千位分隔符。
您必须使用[>=1000]#,##0
格式。
它如何显示取决于系统的区域设置或Excel的分隔符设置(文件/ Excel选项/高级)。
如果导出的数据对于NA和EU都是相同的,则可以留下一个button用于导出。 用户通常将分隔符设置为他们习惯的分隔符。