Страницы: 1
RSS
Помогите, пожалуйста, перегнать таблицу в html код.
 
Доброго времени.  
 
Помогите, пожалуйста, с решением проблемы.  
 
Имееются таблицы с отфармотированным описанием ноутбуков и фотоаппаратов, которые надо перевести в код html на соседнюю ячейку.
 
ну и сохраняйте как html..  
 
в чем проблема?
Живи и дай жить..
 
уберите txt
Живи и дай жить..
 
и поставьте html :)
Живи и дай жить..
 
Дико ИЗВИНЯЮСЬ! НЕ В ТОМ ФОРМАТЕ ТАБЛИЦУ ЗАКАЧАЛ. Вот пример:
 
Да, можно сохранить как html, но при этом код получается неоптимальным.  
Поэтому существуют утилиты и надстройки для такого преобразования.  
Поищите по "xls2html", "xls2htm".
 
Мне не надо сохранять, мне просто  в тойже книге, где таблица, надо преобразовать в html код. Люди, прошу вас, помогите. Даже в офлайне мне некому обратиться.
 
так из сохраненного вы это код можете вытащить..
Живи и дай жить..
 
Может быть это нужно? UDF Get_HTML_Format() <BR>http://www.planetaexcel.ru/forum.php/?thread_id=17161
 
{quote}{login=Hugo}{date=23.04.2011 12:11}{thema=}{post}Может быть это нужно? UDF Get_HTML_Format() <BR>http://www.planetaexcel.ru/forum.php/?thread_id=17161{/post}{/quote}  
 
 
Да, именно. Но только там одну ячейку преобразует, а мне надо целую таблицу в два столбца.
 
тогда вам начальный курс иксель пройти нужно - как писать простейшие формулы, и как их копировать
Живи и дай жить..
 
Пишем макрос  
Для каждой ячейки в задпнном диапазоне выполнить UDF Get_HTML_Format().  
Результат вычислений положитьв нужное место.
 
Я полагаю, Эдгару нужно получить именно таблицу, а UDF таблицу не строит - только отдельные строки.  
Тут вероятно нужен макрос - даём ему Range - на выходе файл.html с таблицей.  
Но сегодня погода не располагает макросы писать :)
 
{quote}{login=Hugo}{date=23.04.2011 02:40}{thema=}{post}Я полагаю, Эдгару нужно получить именно таблицу, а UDF таблицу не строит - только отдельные строки.  
Тут вероятно нужен макрос - даём ему Range - на выходе файл.html с таблицей.  
Но сегодня погода не располагает макросы писать :){/post}{/quote}  
 
 
Hugo, именнно!!! Буду безмерно благодарен, если поможете с подобным маросом. Уже головы себе поломал.
 
Жалко головы...  
Sub Range_()  
Dim c As Range  
[a1].Offset(0, 2) = 5
For Each c In Selection  
c.Offset(0, 2) = Get_HTML_Format©  
Next  
End Sub
 
[a1].Offset(0, 2) = 5
не читать! БЯКА!
"  
If n1z = True Then  
Print #1, "
 
макет--упрощенный вариант  
 
Dim j1, j1p, ntxt  
 
Sub htm110422_1919()  
j1 = 0  
j1p = 0  
'''''''''''''''''''''разметьте или смените каталог''''''  
''ntxt = "c:\rab\00.htm"  
ntxt = Excel.ActiveWorkbook.Path & "\00.htm"  
'''''''''''''''''''''''''''''  
 
Open ntxt For Output As #1  
 
Print #1, "<html>"  
Print #1, "<head>"  
Print #1, "<title>"  
Print #1, "техника</title>"  
Print #1, "</title>"  
''Print #1,"<meta content="." name="Description" />  
''Print #1,"<meta content=" " name="Keywords" />  
Print #1, "<meta http-equiv=""Content-Type"" content=""text/html; charset=windows-1251"" />"  
Print #1, "</head>"  
Print #1, "<body>"  
 
Print #1, ""  
Do While j1 < 123  
j1 = j1 + 1  
p11 Cells(j1, 1).Font.Bold  
Loop  
Print #1, "
"  
Close #1  
'j1 = Shell("winword.exe c:\rab\00.htm", vbMaximizedFocus)  
j1 = Shell("explorer.exe """ & ntxt & """", vbMaximizedFocus)  
 
End Sub  
Sub p11(n1z)  
If Len("" & Cells(j1, 1)) > 0 Then  
Print #1, "
"; Cells(j1, 1)  
Else  
Print #1, "
"; Cells(j1, 1); " : "; ""; Cells(j1, 2)  
End If  
End If  
End Sub
 
К сожалению, это не то.
 
И чем код shanemac не подошёл? Я именно это и предлагал (ну разве что с выделенной областью), и Вы (или не Вы? :)) согласились. Иначе бы этот код и не был вероятно написан - теперь выходит, что человек зря старался?
 
Hugo, огромное спасибо этому человеку за помощь! Но, к сожалению, он мне не подходит. Скорее всего, я не правильно объяснился, что мне надо. Мне нужен код моей таблице в самой книге, на этом же листе в соседних ячейках.
 
{quote}{login=}{date=24.04.2011 05:41}{thema=}{post}Hugo, огромное спасибо этому человеку за помощь! Но, к сожалению, он мне не подходит. Скорее всего, я не правильно объяснился, что мне надо. Мне нужен код моей таблице в самой книге, на этом же листе в соседних ячейках.{/post}{/quote}  
 
1.теги tr \td можно вписать в ячейки , но куда вписать начальную и хвостовую части  
2.можно сделать на закрытии листа  
3. тогда при  закрытии листа будет формировать подобный НТМ с именемЛиста.НТМ в неком оговоренном каталоге
 
Тогда может так  - папаризитировав на UDF Дмитрия:  
 
Function Get_HTML_Format_2Columns(rCell As Range)  
   Dim li As Long, lStartFBold As Long, sStr As String, cc As Range  
   sStr = "
"  
   For Each cc In rCell  
   For li = 1 To Len(cc)  
      If cc.Characters(li, 1).Font.Bold Then  
               If lStartFBold = 0 Then lStartFBold = li: sStr = sStr & "<strong>"  
           Else  
               If lStartFBold <> 0 Then  
                   sStr = sStr & "</strong>": lStartFBold = 0  
               End If  
           End If  
       If Mid$(cc, li, 1) = Chr(10) Then  
           sStr = sStr & "<br>"  
       Else  
           sStr = sStr & Mid$(cc, li, 1)  
       End If  
   Next li  
   sStr = sStr & "
 "  
   Next  
   sStr = Left(sStr, Len(sStr) - 9)  
   Get_HTML_Format_2Columns = sStr  
End Function  
 
 
 
При переносе полученных строк в htm нужно добавить сверху и снизу теги  
 
 
Получится так:  
<strong>Общая информация 
Дата выхода на рынок 2010 г.
 
<strong>Платформа 
Платформа (кодовое название) Intel Calpella (2009)
Процессор Intel Core i3
Модель 370M
Количество ядер 2
Тактовая частота 2 400 МГц    
 
Лучше пробел добавить:  
 
   sStr = sStr & "[td]  "
   Next  
   sStr = Left(sStr, Len(sStr) - 10)
 
Всем БОЛЬШОЕ СПАСИБО!
Страницы: 1
Читают тему
Наверх