Laravel-excel: Необходимо иметь возможность загружать файл шаблона, а также читать и редактировать определенные ячейки.

Созданный на 11 июн. 2015  ·  3Комментарии  ·  Источник: Maatwebsite/Laravel-Excel

У меня проблема с проектом, над которым я работаю. Мне нужно использовать специальный файл шаблонов Excel для отправки данных по ftp стороннему партнеру по интеграции, с которым мы работаем. Единственный формат, который может принимать их система, - это документы xlsx.

Проблема в том, что у них много данных над заголовками столбцов, поэтому мне в основном нужно иметь возможность редактировать эти файлы по ячейкам. Может ли кто-нибудь дать мне большой пример кода, чтобы я мог ориентироваться на определенные ячейки? Может быть, что-то вроде ячейки («B1») или строки (5) -> столбец (5)?

Я просматривал документацию по maatsoftware и, похоже, не нашел в ней ничего конкретного. Я нашел ссылку на то, чтобы сделать что-то подобное с библиотекой phpOffice excel, но не знаю, как вызвать это через эту библиотеку. Я использую Laravel 4.2. Мой проект был начат до того, как вышел Laravel5, поэтому я как бы застрял на арене laravel 4.2.

Заранее благодарю за любую помощь.

Уэйд

Самый полезный комментарий

Привет,

это было не так-то просто узнать, но я наконец понял. Мне нужно было использовать var_dump (get_class_methods ($ reader)); много раз, пока я не нашел правильный метод.

$reader->getExcel()->getSheet()->getCell('C7')->getValue() 
 \Excel::selectSheets('Configuration')->load($file->getRealPath(), function($reader) {              
        $reader->getExcel()->getSheet()->getCell('C7')->getValue() ;            
});

это может быть кому-то полезно.

Все 3 Комментарий

В этом пакете можно вызывать собственные методы PHPExcel.
Вы можете найти методы оболочки в нашей документации: http://www.maatwebsite.nl/laravel-excel/docs/export#rows (разделы Row & Cell манипуляции)

Привет,

это было не так-то просто узнать, но я наконец понял. Мне нужно было использовать var_dump (get_class_methods ($ reader)); много раз, пока я не нашел правильный метод.

$reader->getExcel()->getSheet()->getCell('C7')->getValue() 
 \Excel::selectSheets('Configuration')->load($file->getRealPath(), function($reader) {              
        $reader->getExcel()->getSheet()->getCell('C7')->getValue() ;            
});

это может быть кому-то полезно.

Спасибо всем. Я нашел метод, который тоже сработал для меня сегодня.

$ excel-> getActiveSheet () -> getCellByColumnAndRow ($ col-1, $ row-1) -> getValue ()
а также
$ excel-> getActiveSheet () -> setCellValueByColumnAndRow ($ field [$ key], $ startRow + 1, $ value)

Мне не удалось заставить работать функцию getCell (), но я попробую ваш метод.

Спасибо!

Была ли эта страница полезной?
0 / 5 - 0 рейтинги