У меня есть ячейка C13 с простой тестовой формулой = SUMIF (D8: D18,2, E8: E18). D8-> D18 Удерживает 2 2 и значения D8: D18 жестко закодированы, а не извлекаются из другой формулы. Диапазон E8-> E18 - все 1. В excel правильное значение равно 2. Но когда я вызываю PHPExcel со следующим простым кодом.PHPExcel SUMIF Возвращает неправильную/не рассчитанную формулу
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
PHPExcel_Calculation::getInstance($objPHPExcel)->clearCalculationCache();
$objReader = $objPHPExcel->setActiveSheetIndexByName("TestSumIf");
$value = $objPHPExcel->getActiveSheet()->getCell('C13')->getCalculatedValue();
я получаю $ значение = 0.
Формула Значение = SUMIF (D8: D18,2, E8: E18)
ожидаемое значение 0
Parser Stack: - Массив ([0] => Массив ([тип] => Ссылка на ячейку [значение] => D8 [ссылка] => D8) [1] => Массив ([тип] => Ссылка на ячейку [значение] => D18 [reference] => D18) [2] => Array ([type] => Binary Operator [значение] =>: [reference] =>) [3] => Array ([type] => Value [value] = > 2 [reference] =>) [4] = > Array ([type] => Cell Reference [значение] => E8 [reference] => E8) [5] => Array ([type] => Cell Reference [значение] => E18 [reference] => E18) [6] => Массив ([type] => Двоичный оператор [значение] =>: [ссылка] =>) [7] => Массив ([type] => Количество операндов для функции SUMIF() [значение] => 3 [ссылка] =>) [8] => Array ([тип] => Функция [значение] => SUMIF ([ссылка] =>))
Расчетное значение равно 0
Оценка журнала:
У любого есть понимание, почему это может произойти. Я видел документацию о том, что в SUMIF не должно быть ошибок, но только с SUMIFS, которые можно переписать как SUMPRODUCT, но в моем случае SUMIF вызывает ошибку.