Простой способ создать XLS
3 октября 2008
Есть очень простой способ создать MS Excel табличку. Достаточно записать в file.xls HTML-код:
<table> <tr> <th>Заголовок 1</th> <th>Заголовок 2</th> <th>Заголовок 3</th> </tr> <tr> <td>Данные 11</td> <td>Данные 12</td> <td>Данные 13</td> </tr> <tr> <td>Данные 21</td> <td>Данные 22</td> <td>Данные 23</td> </tr> </table>
Комментарии RSS по email OK
А не лучше просто обойтись csv? :)
Удобно для простых таблиц, в ячейки можно даже формулы записывать. При помощи ~~~ [html] Данные ~~~ можно изменять форматирования, работает также объединение ячеек "colspan" и "rowspan"
А помойму легче открыть MS EXEL и ручками вбить данные и значения ИМХО
Этот способ можно применять для быстрой генерации несложных отчетов, ну или Екселя под рукой нет, всякое бывает
FX Poster
В CSV не выйдет сделать хоть какое-то форматирование.
Nalivaeff
Ага, перебейте руками 200 строчек лога из базы :)
это нужно для дампа инфы с сайтов (аля "сохранить в формате Excel")
Exel реально кушает HTML???? о_О
С CSV есть свои грабли, их есть несколько видов (разделен ",", ";" и т.д.).
Спасибо за рецепт.
Nalivaeff А если Excel'я нет? У меня скрипты выполняются под FreeBSD, где никакого Экселя нет и в помине.
Пригодится, спасибо!
Делаю немного не так. Но принцип схлжий. Описал в своем блоге в посте MS Word и web-фреймворк. Продолжение
спасибо, может быть пригодится
тогда ненадо создавать никакой файл а кормить как обычную html страницу
В таком способе больше всего не нравится то, что не видна разлиновка. Если поставить border=1 - то граница будет только в пределах данных.
Сегодня увидел способ поинтереснее и попроще: Просто текстовой файл с именами колонок и значениями, всё разделено табуляциями. Поддерживает формулы. Дла русского желат. UTF8.
.xsl конечно.
эксель понимает html, если его переименовать в эксель?
А в случае header('Content-type:application/vnd.ms-excel') какое имя файла будет предлагать браузер по-умолчанию?
то какое укажешь в Content-Disposition
Сам давно пользуюсь этим методом.
Рекомендация: нарисуйте отчет (или то, что хотите получить) в самом Excel'е, сохраните как HTML и используйте этот код как шаблон (с соотв. доработкой). Так можно генерить очень сложные вещи, включая графические элементы.
Есть проблемы с кодировками: Excel отказался открывать UTF-8 без BOM, OpenOffice открыл только UTF-16. Поэтому лучше сохранять табличку в цельном HTML с указанием кодировки в мета-теге. Обе программы открывают на ура, для OO можно задать расширение ods.