PHPExcel:STATEMENT_IF公式不工作返回true

时间:2013-06-10 14:36:49

标签: phpexcel

我试图通过phpexcel库匹配if条件,但是每次真实条件时公式都会返回我,这里是我的代码

$ condition =“B2-300 = 0”; //如果输入1而不是零,那么公式仍然返回零。我在B2单元格中有300个整数值。

echo $ ajaxFinalValue = PHPExcel_Calculation_Logical :: STATEMENT_IF($ condition,$ objPHPExcel-> getActiveSheet() - > getCell('B6'),$ objPHPExcel-> getActiveSheet() - > getCell('C6') ); 一世 B6值是答案,但是当我错误的条件然后也返回B6

请告知该怎么做。

由于 阿迪尔

1 个答案:

答案 0 :(得分:0)

STATEMENT_IF()方法需要条件的布尔结果,而不是条件本身。

如果要评估条件本身,则需要调用计算引擎来处理评估,而不是它调用的函数:

PHPExcel 1.7.9版和早期版本之间存在细微差别

PHPExcel 1.7.9版

$ifFormula = '=IF(B2-300=0,B6,C6)';
$formulaResult = PHPExcel_Calculation::getInstance($objPHPExcel)
    ->calculateFormula(
        $ifFormula,
        'A1',
        $objPHPExcel->getActiveSheet()->getCell('A1')
    );
var_dump($formulaResult);

早期版本

$ifFormula = '=IF(B2-300=0,B6,C6)';
$formulaResult = PHPExcel_Calculation::getInstance()
    ->calculateFormula(
        $ifFormula,
        'A1',
        $objPHPExcel->getActiveSheet()->getCell('A1')
    );
var_dump($formulaResult);