Как выбрать данные из excel если в некоторых ячейках пусто?

Все очень просто, иду по экселю все нормально до момента как встречается пустая ячейка, как только он ловит пустую ячейку получаю ошибку, как это обойти, хотя бы вместо ошибки получать null? Да я использую библиотеку PhpSpreadsheet

Uncaught Error: Call to a member function getValue() on null in


for ($row = 2; $row <= $cells->getHighestRow(); $row++) {
    for ($col = 'A'; $col <= 'M'; $col++) {
         if ($col == 'A') {
            $tmp= $cells->get($col . $row)->getValue();
        }
    }
  • Вопрос задан
  • 227 просмотров
Пригласить эксперта
Ответы на вопрос 2
hint000
@hint000
у админа три руки
Вообще-то я не кодер, но из любопытства загуглил и вижу в этой библиотеке две функции ISNUMBER, ISBLANK - разве не оно?
Ответ написан
@AndrewDnt
Скорее всего, вы обходите коллекцию $cells - заполненные ячейки.
А вам надо делать обход коллекции $worksheet - все ячейки страницы

Вот пример из phpspreadsheet
=========================================

$reader = \PhpOffice\PhpSpreadsheet\IOFactory::createReader('Xlsx');
$reader->setReadDataOnly(TRUE);
$spreadsheet = $reader->load("test.xlsx");

$worksheet = $spreadsheet->getActiveSheet();
// Get the highest row and column numbers referenced in the worksheet
$highestRow = $worksheet->getHighestRow(); // e.g. 10
$highestColumn = $worksheet->getHighestColumn(); // e.g 'F'
$highestColumnIndex = \PhpOffice\PhpSpreadsheet\Cell\Coordinate::columnIndexFromString($highestColumn); // e.g. 5

echo '
' . $value . '
' . PHP_EOL;
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы