У меня есть шаблон TBS Excel с многочисленными листами. Я хочу переименовать каждый лист в соответствии с переменной, которая будет помещена в ячейку A2. Я знаю, что Excel не позволяет использовать специальные символы в именах таблиц, поэтому я не могу использовать квадратные скобки для установки переменной TBS.
Есть ли способ изменить имена листов программно, используя TinyButStrong Excel или PHP (примечание: PHP Excel не подходит в этой среде)?
Спасибо
На данный момент (OpenTBS версия 1.9.11) нет специальной функции для переименования листа в книге XLSX.
Тем не менее, вы можете открыть вложенный файл «xl / workbook.xml» и заменить старое имя листа новым, зная, что имя листа хранится в name
приписывать.
Пример XSLX:
<sheet name="My old sheet" sheetId="1" r:id="rId1"/>
Код PHP:
$TBS->PlugIn(OPENTBS_SELECT_FILE, 'xl/workbook.xml');
$TBS->Source = str_replace('name="My old sheet"', 'name="My new sheet"', $TBS->Source);
Других решений пока нет …