无法在 PHPExcel 中格式化数字
Can't format number in PHPExcel
我正在使用 PHPExcel 打印一些金额,我需要它们在逗号后有 4 个小数,但我想删除任何尾随零。比如我的输入是:
Input: 11,1230 => Wanted output: 11,123
Input: 0,0123 => Wanted output: 0,0123
Input: 8,3200 => Wanted output: 8,32
Input: 44,0000 => Wanted output: 44 <--error is here
问题是我无法去掉 44,0000
的尾随逗号,它打印为 44,
我正在使用以下命令:
$activeSheet->getStyle("K10")->getNumberFormat()->setFormatCode('€ ####0.####');
所有数字都按预期打印,除了那些没有有效小数值的数字,例如 44,0000。有什么想法吗?
编辑:我知道我可以使用 MS Excel 来实现这一点,方法是使用这些按钮
但我更喜欢 PHP 解决方案
我认为您需要 excel 的解决方案,因为您的最终结果将从 excel sheet 中可见,并且您的要求似乎仅使用数字格式是不可能的。我的建议是从 PHPExcel 添加条件数字格式。 Here 显示如何使用 excel。
或
您可能必须覆盖 PHPExcel 类。
也许你打算使用
€ ####0.0000
或
€ ####0.0###
而不是
€ ####0.####
#
告诉 MS Excel 仅在必要时在该位置显示数字,而 0
告诉 MS Excel 始终在该位置显示数字(即使那个数字只是一个 0
)
但是如果您使用 .####
,MS Excel 将始终显示小数点分隔符,即使后面没有要显示的数字,除非您使用 [=17 这样的公式的条件格式=]
我正在使用 PHPExcel 打印一些金额,我需要它们在逗号后有 4 个小数,但我想删除任何尾随零。比如我的输入是:
Input: 11,1230 => Wanted output: 11,123
Input: 0,0123 => Wanted output: 0,0123
Input: 8,3200 => Wanted output: 8,32
Input: 44,0000 => Wanted output: 44 <--error is here
问题是我无法去掉 44,0000
的尾随逗号,它打印为 44,
我正在使用以下命令:
$activeSheet->getStyle("K10")->getNumberFormat()->setFormatCode('€ ####0.####');
所有数字都按预期打印,除了那些没有有效小数值的数字,例如 44,0000。有什么想法吗?
编辑:我知道我可以使用 MS Excel 来实现这一点,方法是使用这些按钮
但我更喜欢 PHP 解决方案
我认为您需要 excel 的解决方案,因为您的最终结果将从 excel sheet 中可见,并且您的要求似乎仅使用数字格式是不可能的。我的建议是从 PHPExcel 添加条件数字格式。 Here 显示如何使用 excel。
或
您可能必须覆盖 PHPExcel 类。
也许你打算使用
€ ####0.0000
或
€ ####0.0###
而不是
€ ####0.####
#
告诉 MS Excel 仅在必要时在该位置显示数字,而 0
告诉 MS Excel 始终在该位置显示数字(即使那个数字只是一个 0
)
但是如果您使用 .####
,MS Excel 将始终显示小数点分隔符,即使后面没有要显示的数字,除非您使用 [=17 这样的公式的条件格式=]