gpt4 book ai didi

excel - NPOI:实现像Excel格式化一样的货币格式

转载 作者:行者123 更新时间:2023-12-04 19:56:03 26 4
gpt4 key购买 nike

我在这里看到了一些问题(例如 this one ),询问 Excel 中的单元格是否可以通过 NPOI/POI 进行格式化,就像 formatted by Excel 一样。 。和你们大多数人一样,我必须处理货币和日期时间的问题。这里想问一下如何才能实现像Excel格式化一样的格式化呢? (我会亲自回答这个问题,以演示如何做到这一点。)

设置:Windows 10,英语,地区:台湾Excel 格式:XLSX(2007 及更高版本)

(很抱歉对这个问题进行了各种编辑,因为我在意外的时间按下了“Enter”按钮。)

最佳答案

如果将单元格格式设置为货币,则有 4 个选择:Excel Currency Format

各个样式的内部格式如下:

  1. -NT$1,234.10

  2. [红色]NT$1,234.10

  3. -NT$1,234.10

  4. [红色]-NT$1,234.10

注意:NT$前后各有一对双引号(")。

(要获取 XLSX 的内部格式,只需将其解压缩。样式信息位于 \xl\Styles.xml 中,如果您需要更多信息,请查看此 answer。)

(仅供引用:在formatCode中,'0'代表一个数字。'#'也代表一个数字,但如果数字不够大就不会出现。所以任何小于1000 里面不会有逗号。'_' 是空格符。在格式 3 中,'1.75' 显示为 'NT$1.75 '。最后一个是空格。)

(仅供引用:在 numFmtId 中,对于情况 1 和情况 2,数字 164 是用户定义的。对于情况 3 和 4,数字 7 和 8 是 build-in style 。)

对于使用 POI/NPOI 的开发人员,您可能会发现是否使用 Build In Format 格式化货币列使用0x7或0x8,您只能得到第三或第四个选择。您无法获得第一或第二选择。

要获得第一个选择,您可以基于样式 0x7 "$#,##0.00);($#,##0.00)" 进行构建。您需要在其前面添加货币符号和一对双引号

styleCurrency.DataFormat = workbook.CreateDataFormat().GetFormat("\"NT$\"#,##0.00");

将此格式应用于包含数字的单元格。打开Excel结果文件后,右键单击检查格式,您将看到第一个选择。

请随时对此帖子发表评论。

关于excel - NPOI:实现像Excel格式化一样的货币格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45565200/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com