Basit bir test formülü olan bir hücre C13'üm var = SUMIF (D8: D18,2, E8: E18). D8-> D18 2 2'leri tutar ve D8: D18'in değerleri başka bir formülden alınmaz, kodlanır. E8-> E18 aralığı hepsi 1'dir. Excel'de doğru değer 2'dir. Ama PHPExcel'i aşağıdaki basit kodla aradığımda.PHPExcel SUMIF Yanlış/İade Edilmemiş Formül Alıyor
Beklenen Değer 0
Ayrıştırıcı Stack olduğunu (E18:, E8 D18,2 D8):
$objReader = PHPExcel_IOFactory::createReader($inputFileType);
PHPExcel_Calculation::getInstance($objPHPExcel)->clearCalculationCache();
$objReader = $objPHPExcel->setActiveSheetIndexByName("TestSumIf");
$value = $objPHPExcel->getActiveSheet()->getCell('C13')->getCalculatedValue();
Ben $ değeri elde
= 0.
Formülü Değeri = SUMIF olduğunu - Array ([0] => Array ([type] => Hücre Referansı [value] => D8 [referans] => D8) [1] => Array ([type] => Hücre Referansı [value] => D18 [reference] => D18) [2] => Array ([type] => İkili Operatör [value] =>: [referans] =>) [3] => Array ([type] => Değer [value] = > 2 [referans] =>) [4] = > Array ([type] => Hücre Referansı [value] => E8 [referans] => E8) [5] => Dizi ([tip] => Hücre Referansı [value] => E18 [referans] => E18) [6] => Array ([type] => İkili Operatör [value] =>: [referans] =>) [7] => Array ([type] => İşlev SUMIF için İşlenen Sayım() [value] => 3 [referans] =>) [8] => Array ([tür] => İşlev [değer] => ETOPLA ([referans] =>))
Hesaplanan değer 0
Değerlendirme Giriş olup:
Bunun neden olabileceği konusunda herhangi bir fikir sahibi olun. SUMIF ile hiçbir hata olmamalı ancak SUMIFS ile SUMIFS olarak yeniden yazılabilir, ancak benim durumumda SUMIF hataya neden olduğunu belirten dökümanları gördüm.