@aizhar777

PHP Библиотека создания Excel файлов по шаблону?

Привет,
Подскажите пакет для работы с Excel по шаблону,
Есть несколько Excel таблиц (счет, счет-фактура акт-выпю работ), то есть файлы не большие. По сути изменить только значения некоторых ячеек и продублировать строку с наименованием товаров. (1-5 строк)
Google ведет в основном на PHPExcel который DEPRECATED, и которая сейчас называется PhpSpreadsheet. PhpSpreadsheet создает документы нормально, но вот взять Excel фаил изменить значения уже не может (при пересохранении и послуедующем открытии в Excel ругается что не верное расширение файла или фаил поврежден), даже копи-паст кода примеров из документации пересохраняет поврежденный фаил который Excel не может открыть.
Копи-паст кода из доков PhpSpreadsheet
$spreadsheet = \PhpOffice\PhpSpreadsheet\IOFactory::load('template.xlsx');

$worksheet = $spreadsheet->getActiveSheet();

$worksheet->getCell('A1')->setValue('John');
$worksheet->getCell('A2')->setValue('Smith');

$writer = \PhpOffice\PhpSpreadsheet\IOFactory::createWriter($spreadsheet, 'Xls');
$writer->save('write.xls');

Так выглядит один Excel фаил из нескольких
5aeab6aabe38e319526224.png

Пробовал сохранять html table как .xls, Excel ругается но открывает а вот потом распечатать из него очень трудно (таблица разъезжается на несколько станиц и трудно выверить размер)
  • Вопрос задан
  • 2465 просмотров
Пригласить эксперта
Ответы на вопрос 2
@LuchS-lynx
инженер-ПТО
Я решил подобную задачу через стандартные средства экселя, а именно через макросы. Здесь моя статья, правда применимо к Исполнительной документации в строительстве, но суть та же: по шаблону заполнить типовые бланки. Создаются листы, в которых будут данные под заполнение бланков, а далее макросом пишем данные из ячеек с листа данных в конкретные ячейки файла. https://m.habr.com/post/344956/
Из минусов решения файл шаблона придется настраивать под каждый принтер, т.е. если печатаете на одном настроили и забыли, но если потребуется печатать на другом, то никто не даст гарантии что разметка ранее сохраненных файлов не поедет. Решается перенастройкой вывода на печать шаблона под другой принтер и перевыводом старых файлов
Ответ написан
Комментировать
@roxblnfk
tinybutstrong с плагином opentbs запросто выполнит задачу генерирования офисного документа по шаблону
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
YCLIENTS Москва
от 200 000 до 350 000 ₽
Ведисофт Екатеринбург
от 25 000 ₽
ИТЦ Аусферр Магнитогорск
от 100 000 до 160 000 ₽