Как прочитать видимые данные ячейки, а не основную формулу в PHPExcel? - PullRequest
5 голосов
/ 25 июля 2011

Я хочу знать, как читать видимое / рассчитанное содержимое ячеек листа Excel, а не основную формулу. Например: - если ячейка содержит сумму (a1, a5), равную, скажем, 123, то она должна читать 123, а не сумму (a1, a5). Аналогично для времени, оно должно считывать время как оно есть, а не ссылочное значение в соотношении 24:00:00 ...

Пожалуйста, помогите мне !!!

Вирусный джайн

Ответы [ 2 ]

4 голосов
/ 25 июля 2011

Вы можете использовать ...->getCell($columnAsLetters.$row)->getCalculatedValue();, как описано в этой теме: Как автоматически читать рассчитанные значения с помощью PHPExcel?

0 голосов
/ 22 июня 2015

Если вы не уверены в содержании ячейки (включая значение или формулу), я рекомендую сначала проверить, есть ли в ячейке формула, а затем скопировать и вставить соответствующим образом.getOldCalculatedValue () очень полезна в этом случае.Вот пример этого:

$code = $sheet->getCell('A'.$y)->getValue();
if(strstr($code,'=')==true)
{
    $code = $sheet->getCell('A'.$y)->getOldCalculatedValue();
}
$objPHPExcel4->setActiveSheetIndex(0)
             ->setCellValue('A'.$l, $code);

Для больших наборов данных функция getCalculatedValue () действительно громоздка, и для ее правильной работы потребуется много памяти.

...