无法在PHPExcel中

时间:2017-02-10 13:35:51

标签: php phpexcel number-formatting

我使用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来实现这一目标,使用这些按钮

enter image description here

但我更喜欢PHP解决方案

2 个答案:

答案 0 :(得分:1)

也许您打算使用

€ ####0.0000

€ ####0.0###

而不是

€ ####0.####

#告诉MS Excel只在必要时显示该位置的数字,而0告诉MS Excel始终显示该位置的数字(即使该数字只是{{} 1}})

但是如果您使用0,MS Excel将始终显示小数点分隔符,即使您没有显示数字,除非您使用带有.####

等公式的条件格式

答案 1 :(得分:0)

我认为您需要excel的解决方案,因为您的最终结果将从Excel工作表中显示,并且您的要求似乎不可能仅使用数字格式。我的建议是从PHPExcel添加条件数字格式。 Here显示了如何使用excel完成。

您可能必须覆盖PHPExcel类。