Phpexcel не может исправить ошибку: вы пытались установить лист активным по индексу out of bounds
У меня есть PHP-программа, которая читает листы XLS-файла и преобразует каждый лист в CSV-файл.
Ошибка, которую я получаю:
Фатальная ошибка: Неперехваченные PHPExcel_Exception: вы пытались установить активный лист ожидания индекса по часам: 3. Фактическое количество листов 3. в C:\xampp\htdocs\Technocripa-php\PHPExcel\Classes\PHPExcel.php:695 трассировка стека: #0 C:\xampp\htdocs\Technocripa-php\convertCSV.php(34): PHPExcel-&ГТ;setActiveSheetIndex(3) #1 C:\xampp\htdocs\Technocripa-php\convertCSV.php(19): convertXLStoCSV('загрузки/Центральная...', 'Centralizator_f...') #2 {главная} брошены в C:\xampp\htdocs\Technocripa-php\PHPExcel\Classes\PHPExcel.php на линии 695
Код:
function convertXLStoCSV($infile, $outfile) // the function that converts the file { $fileType = PHPExcel_IOFactory::identify($infile); $objReader = PHPExcel_IOFactory::createReader($fileType); $objReader->setReadDataOnly(true); $objPHPExcel = $objReader->load($infile); //$objPHPExcel->createSheet(); $i = 0; while ($objPHPExcel->setActiveSheetIndex($i)){ $objWorksheet = $objPHPExcel->getActiveSheet(); $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'CSV'); $objWriter->save($outfile); $i++; //$sheetNames = $infile->getSheetNames(); } } ?>
Что я уже пробовал:
Я пробовал ставить
$objPHPExcel->createSheet();
вне цикла, но ошибка сохраняется, но просто изменяет свои данные:
Фатальная ошибка: Неперехваченные PHPExcel_Exception: вы пытались установить активный лист ожидания индекса по часам: 4. Фактическое количество листов 4.