使用PHPExcel中的逗号汇总数字

时间:2017-08-22 06:50:45

标签: php phpexcel

我正在尝试使用PHPExcel汇总我的列(计算现金)。问题是数字被输入为字符串 ...我不想删除逗号以使其用户友好。

你能帮我找一下这个专栏吗?

enter image description here

这是我的代码:

$sql = "SELECT a.DOB as `DATE` 
FORMAT(a.Amount,2) as CALCULATED from deposit a where STR_TO_DATE(a.DOB, 
'%m/%d/%Y') BETWEEN '20170701' AND '20170701'



$rowCount = 2;  
$rowTop = 3;
$rowMinus = $rowCount - 1;

$objPHPExcel->getActiveSheet()->setCellValue('D'.$rowCount, 
'=SUM(D'.$rowTop.':D'.$rowMinus.')');
 $objPHPExcel->getActiveSheet()-
>getStyle('D'.$rowCount)>applyFromArray($styleBold);
 $objPHPExcel->getActiveSheet()->getStyle('D3:D4')
->getNumberFormat()
->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_GENERAL);

2 个答案:

答案 0 :(得分:1)

关于php的一些技巧:

$a = "4,";
$b = "5 soldiers";
echo $a + $b; // returns 9

因此,php是一种弱类型语言,并检查是否需要将字符串转换为整数!

如果您有这样的东西,可以将它的数字转换为数字数组:

$val = ", 2, ,4 ,5 , 6"; // a string of numbers
$parts = explode(",",$val); // an array of numbers

所以$ parts就像:

array(6) { [0]=> string(0) "" [2]=> string(1) " 2" [2]=> string(1) " " [3]=> string(2) " 4" [4]=> string(2) " 5" [5]=> string(2) " 6" }

答案 1 :(得分:0)

我找到了我正在寻找的答案:)

当我在数据库中调用结果并将此代码添加到我的PHPexcel中时,我已经删除了FORMAT({columnname},2)。

代码:

 $objPHPExcel->getActiveSheet()->getStyle('H'.$rowCount)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_NUMBER_COMMA_SEPARATED1);