В настоящее время я использую плагин TinyButStrong для Excel, чтобы создавать многочисленные документы Excel, которые отправляются по расписанию. Меня попросили разбить информацию на отдельные листы, в пределах одного документа Excel, где каждый отчет может иметь разное количество листов (поэтому я не могу просто использовать несколько листов в файле шаблона, так как количество листов непредсказуемо) ,
Я могу легко создавать отдельные документы Excel и использовать соглашение об именах, чтобы определить, какие документы Excel должны быть объединены, но я не могу найти способ объединения документов с помощью TinyButStrong Excel.
ПРИМЕЧАНИЕ: из-за нашей среды PHP Excel не вариант.
Пожалуйста, дайте мне знать, если вам известен способ объединения нескольких документов Exc3el или программного создания документа Excel с многочисленными рабочими листами, созданными из одного шаблона рабочего листа.
Спасибо.
На данный момент вы не можете объединить несколько документов XLSX в один.
Это связано с тем, что, несмотря на чтение исходного XML-документа на рабочем столе с помощью OpenTBS, вы не можете просто скопировать XML-файл из исходного файла XLSX в другой целевой файл XLSX
потому что такой XML использует несколько внутренних идентификаторов для стилей, комментариев, настроек печати, … Эти идентификаторы хранятся в сложных местах в исходных файлах XML.
Таким образом, такая простая копия создаст неверный целевой файл XLSX.
Другой момент заключается в том, что OpenTBS не может (на данный момент) создать новый рабочий лист в XLSX. Он может только изменять, удалять или скрывать существующий лист в шаблоне.
Таким образом, решение вашей проблемы состоит в том, чтобы иметь файл шаблона XLSX, содержащий все возможные рабочие листы, которые вы могли иметь в конечном файле XLSX.
Затем вы можете объединить нужные листы (используя OPENTBS_SELECT_SHEET) и удалить ненужные листы (используя OPENTBS_DELETE_SHEETS).
Других решений пока нет …