Otomatik PHPExcel ile hesaplanan değerleri nasıl okunur?

0 Cevap php

Ben Excel dosyası şu var:

alt text

I looping, her hücre üzerinde ve ile değerini alarak onu okumak getCell(...)->getValue():

$highestColumnAsLetters = $this->objPHPExcel->setActiveSheetIndex(0)->getHighestColumn(); //e.g. 'AK'
$highestRowNumber = $this->objPHPExcel->setActiveSheetIndex(0)->getHighestRow();
$highestColumnAsLetters++;
for ($row = 1; $row < $highestRowNumber + 1; $row++) {
    $dataset = array();
    for ($columnAsLetters = 'A'; $columnAsLetters != $highestColumnAsLetters; $columnAsLetters++) {
        $dataset[] = $this->objPHPExcel->setActiveSheetIndex(0)->getCell($columnAsLetters.$row)->getValue();
        if ($row == 1)
        {
        $this->column_names[] = $columnAsLetters;
        }
    }
    $this->datasets[] = $dataset;
}

Bu veri ceza okur rağmen Ancak, bu hesaplamalarda okur literally:

alt text

Ben getCalculatedValue() hesaplanan hücreler için kullanabileceğiniz tartışmalara like this one anlıyoruz.

Sorun ben ithal ediyorum Excel tabloları, ben hücreler hesaplandığı önceden bilmek ve değil hangi olmasıdır.

Is there a way for me to read in the value of a cell in a way that automatically gets the value if it has a simple value and gets the result of the calculation if it is a calculation?

Answer:

Ben bir çoğunlukla yerine ait hesaplamalar değeri istiyorum düşünürdüm çünkü bu getValue() için varsayılan değil neden beni meraklandırıyor, getCalculatedValue() tüm hücreler için çalıştığını çıkıyor Bu işler her durumda, kendilerini denklemleri:

...->getCell($columnAsLetters.$row)->getCalculatedValue();

alt text

0 Cevap