在PHP Excel中添加百分比数字格式

问题描述 投票:1回答:1

当我将单元格的格式设置为%时,它会自动将该值乘以100并显示该值。因此94变为9400%。

我想在列上应用%格式,但希望保持与以前相同的值。我只想要%符号与值一起显示。我的价值应该是94%。为此,我使用了以下格式代码

$this->_xls_current_sheet->getStyle($cell_coordinates)->getNumberFormat()->applyFromArray( 
 array( 
 'code' => PHPExcel_Style_NumberFormat::FORMAT_PERCENTAGE
));
php phpexcel number-formatting percentage
1个回答
0
投票

如果你将0.5存储在一个单元格中,并将其格式化为百分比,那么它将显示为50% ....如果你将50存储在一个单元格中,并将其格式化为百分比,那么它将显示为5000%就是这样的应该。

如果在MS Excel GUI中输入50作为数字,然后手动将格式掩码设置为百分比,则将显示5000%的显示值。但是,如果在MS Excel GUI中输入50%,则MS Excel将值除以100以将0.5存储在单元格中,并将其格式化为百分比(一步中有两个操作)。如果您在MS Excel中以这种方式设置50%,然后将格式掩码从百分比更改为数字,那么您将看到MS Excel已为您完成此分区。

PHPExcel不执行此操作(默认情况下)...它希望您将正确的值和格式设置为两个单独的步骤。因此PHPExcel希望您首先在单元格中存储正确的值(0.5),当您想要将其格式化为百分比时......它不会以任何方式神奇地更改值,它不会使它成倍增加一点都不

请注意,如果您使用高级值绑定器(而不是默认值绑定器),并将单元格值设置为50%,那么PHPExcel将除以100并自动设置为百分比,与MS Excel GUI的方式相同。

© www.soinside.com 2019 - 2024. All rights reserved.