PHPEXCEL getCalculatedValue oder getFormattedValue gibt schwerwiegender Fehler

Ich habe eine Datei mit dem mime-Typ "application/octet-stream; charset=binary" und die Erweiterung ".xlsx". PHPExcel_IOFactory::identifizieren($this->Datei) gibt 'Excel2007'. Ich erstelle meine Leser wie dieses:

$this->objectReader = PHPExcel_IOFactory::createReaderForFile($this->file);

Wenn ich versuche, um der Wert in einer Zelle mit einer Formel, die ich nur tun können, es auf zwei Arten:

1)$sheet->getCell($columns[$i].$row->getRowIndex())->getValue() 
//return the actual formula as a string
2)$sheet->getCell($columns[$i].$row->getRowIndex())->getOldCalculatedValue() 
//returns the oldCalculated value which is not always corret (for example the value in the cell is 17.4% and it returns 0.17)

Wenn ich dump die $sheet->getCell($Spalten[$i].$Zeile->getRowIndex()) Objekt die Ausgabe beginnt mit der Stilllegung :

object(PHPExcel_Cell)[142370]
  private '_value' => string '=IFERROR(IF(C$6="yes",IF(ISBLANK(INDIRECT(ADDRESS($AN15,MATCH($B$6,INDIRECT("'"&C$7&"'!"&$AN$9-1&":"&$AN$9-1),0),,,C$7),TRUE)),"",INDIRECT(ADDRESS($AN15,MATCH($B$6,INDIRECT("'"&C$7&"'!"&$AN$9-1&":"&$AN$9-1),0),,,C$7),TRUE)),""),"")' (length=231)
  private '_calculatedValue' => float 0.1744360902255639
  private '_dataType' => string 'f' (length=1)
  private '_parent' =>...

Den richtigen Wert da ist, aber ich kann nicht darauf zugreifen...
Wenn ich versuche, den Wert der Zelle mit getFormattedValue() oder mit getCalculatedValue() die Ausgabe ist die Stilllegung fatal error:

Catchable fatal error: Argument 2 passed to PHPExcel_Calculation_LookupRef::INDIRECT() must be an instance of PHPExcel_Cell, boolean given

Jede Idee, wie dieses problem zu lösen ? Ich bin wirklich stecken und keine Ahnung haben. Danke.

Schreibe einen Kommentar