PHPexcel公式单元格被覆盖而不是在过滤器列

时间:2017-02-18 07:19:06

标签: phpexcel

我正在使用PHPExcel_v1_8​​,我已经为一些单元格实现了公式,如下所示。

$objPHPExcel->getActiveSheet()->SetCellValue('G4','=SUBTOTAL(2,B6:B'.$row.')'); 
 $objPHPExcel->getActiveSheet()->SetCellValue('H4','=ROUND(SUBTOTAL(9,Q6:Q'.$row.'),2)');

我也尝试了

$objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow(6,4,'=SUBTOTAL(2,B6:B'.$row.')');

这里$ row表示总行数。

但是当我过滤任何列时,它会追加/覆盖公式应用单元格的值。请参阅以下过滤的总行。

enter image description here

我只希望在过滤总行中的最新值意味着要替换现有值。现在,我得到了正确的价值,但为什么它被压倒了?有什么建议可以解决方案吗?

1 个答案:

答案 0 :(得分:0)

你真的发现了一个真正的错误。 当我在PHPExcel中实现SUBTOTAL逻辑时,我不知道它只对可见行有效,并忽略了隐藏的行。你能否在github repo

上提出问题

但是,通过MS Excel docs读取SUBTOTAL,29的函数将返回范围内所有行(隐藏或其他)的结果{{1} }或102将仅返回可见行的结果