.
29 апреля 2009

Простая конвертация xls в html

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (2 оценок, среднее: 5.00 из 5)
posted in Полезности, Программирование |

Задачка нарисовалась — из xls файлика перетащить таблицу в CMS-ку (как оказалось не тривиальная).

Из EXEL-а экспорт в html даёт просто безобразный код с кучей лишнего и абсолютно ненужного форматирования. Копипаст в редактор — тоже самое.

Руками делать — не вариант :)

Немного погуглив всё же нашел IMHO красивый вариантик (на сеарчэнжине)

Допустим в  ячейках A1, B1, C1, D1 находятся данные которые нужно экспортировать.

В результирующей ячейке (напр. F1)  вводим формулу
=СЦЕПИТЬ(«<tr>»;"<td>";A1;"</td>";"<td>";B1;"</td>";"<td>";C1;"</td>";"<td>";D1;"</td>";"</tr>")

После чего выделяем ячейку с введенной формулой и протаскиваем её на все строки — полученное копируем и вставляем в html редактор.

Конечно теги <table></table> дописываем в ручную.

После чего доводим до ума табличку уже в редакторе.

P.S.

Раз уж поставил метку «полезняшки» — посоветую полезную для верстки мини-прогу ColorSpy.

Прога работает как «пипетка» в графических редакторах, но прямо в винде — вытаскивает RGB код цвета любого участка рабочего стола.

Post to Twitter ReTweet

Похожие статьи

У нас куча комментариев (10) на запись “Простая конвертация xls в html”

Почему бы Вам не высказать своем мнение! Позвольте нам узнать, что Вы думаете...

  1. 1 On 30.04.2009, Freebies said:

    Вар 1. Save as — Web Page (получаем HTML на выходе).

    Вар 2. Экспорт в текстовый файл. И затем собственный конвертор в HTML.

  2. 2 On 30.04.2009, GTAlex said:

    про 1й вариант я написал — там код получается такой, что проще руками сделать всю табличку, чем его переделывать

    2й вариант конечно присутствует — тоже хотел про него запостить — но имхо это не простой метод :)

  3. 3 On 30.04.2009, Кирюха базарный said:

    Угу. Добавь еще table и /table в отдельные ячеки и приклеивай их =)

    Вот когда из пдф-а руками таблицу в эксель перекидываешь — вот это настоящий гемор. Если целиком скопировать попытаешься, то обязательно что-нить слетит и тп, так что по столбикам. А еще в таблицах попадались значения аля: 32×45 — которые надо было на 2 ячейки разбивать. Сначала трахался с if-ами, потом пришел к более простому варианту: блокнот «bred». Там можно в окошко на что заменять таб или ентер пихнуть :)

    А вообще экспорт из экселя реализуется в две строки. Сначала экселевский файл сейвиш как csv (откроешь из блокнота и поймешь фишку), а дальше:

    $a=file('exel.csv');

    for($i=0;$i<sizeof($a);$i++) $b[$i]=explode(';',$a);

    $b — выходной массив

  4. 4 On 03.05.2009, galex said:

    Такое простое решение, как я не додумался)))

    В своё время писал программу, через OLE-объекты взаимодействующую с excel-файлом и генерирующую выходные файлы, а всего-то и стоило сцепить...)

  5. 5 On 04.05.2009, Аркадий said:

    Отличное решение! До этого у меня никак не получалось осуществить подобное! Теперь получилось!

  6. 6 On 21.05.2009, ToR4 said:

    ох... очень большое спасибо :) по работе часто приходиться таскать таблички из «проклятого» екселя. О таком простом решении даже не догадивался :) немного доработал и теперь получаеться таблица сразу с нужной мне разметкой и стилем, если интересуетесь — могу скинуть конечный результат

  7. 7 On 21.05.2009, Лука said:

    Спасибо,за код,а то ручками замучился таскать

  8. 8 On 24.05.2009, Фридрих said:

    Кирюха базарный — а ведь дело говоришь! Работает твой код — респектище чувак!

  9. 9 On 06.06.2009, Igorasha said:

    Неплохо придумал. Уже опробывал, молодец что до такого додумался.

  10. 10 On 06.06.2009, Always last said:

    Самое обсуждаемое на блогах:
    Самоубийство Дэвида Кэррадайна
    Рок-музыкант Жан Сагадеев покончил с собой
    Слухи о ртутном облаке

  11. Always Last said:
    Самое обсуждаемое на блогах:
    По факту нападения на администрацию Химок задержаны двое
    Олегу Попову - 80 лет
    1 августа - День памяти преподобного Серафима Саровского

Оставить комментарий