У меня есть ячейка C13 с простой формулой теста = СУММЕСЛИ (D8: D18,2, E8: E18). D8-> D18 Содержит 2 2, а значения D8: D18 жестко запрограммированы, а не извлекаются из другой формулы. Диапазон E8-> E18 - это все единицы. В Excel правильное значение - 2. Но когда я вызываю PHPExcel с помощью следующего простого кода.
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
PHPExcel_Calculation::getInstance($objPHPExcel)->clearCalculationCache();
$objReader = $objPHPExcel->setActiveSheetIndexByName("TestSumIf");
$value = $objPHPExcel->getActiveSheet()->getCell('C13')->getCalculatedValue();
Я получаю $ value = 0.
Значение формулы = СУММЕСЛИ (D8: D18,2, E8: E18)
Ожидаемое значение 0
Стек парсера: - Массив ([0] => Массив ([тип] => Ссылка на ячейку [значение] => D8 [ссылка] => D8) [1] => Массив ([тип] => Ссылка на ячейку [значение] => D18 [ссылка] => D18) [2] => Массив ([тип] => Двоичный оператор [значение] =>: [ссылка] =>) [3] => Массив ([тип] => Значение [ значение] => 2 [ссылка] =>) [4] => Массив ([тип] => Ссылка на ячейку [значение] => E8 [ссылка] => E8) [5] => Массив ([тип] => Ссылка на ячейку [значение] => E18 [ссылка] => E18) [6] => Массив ([тип] => Двоичный оператор [значение] =>: [ссылка] =>) [7] => Массив ([тип ] => Количество операндов для функции СУММЕСЛИ () [значение] => 3 [ссылка] =>) [8] => Массив ([тип] => функция [значение] => СУММЕСЛИ ([ссылка] =>))
Расчетное значение равно 0
Журнал оценки:
Кто-нибудь знает, почему это может происходить. Я видел документацию, в которой говорится, что не должно быть ошибок с СУММЕСЛИ, а только с СУММЕСЛИМН, которые можно переписать как СУММПРОИЗВ, но в моем случае СУММЕСЛИ вызывает ошибку.