Гость
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Публикация файла excel в htm / 13 сообщений из 13, страница 1 из 1
15.09.2015, 12:25
    #39051691
Agapov_stas
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Публикация файла excel в htm
Доброго времени суток!
Появился вопрос, прошу помощи.

"Выгружаю" данные из таблицы:
Код: vbnet
1.
2.
3.
4.
5.
Dim sFile As String
sFile = "C:\grafic.htm"
With ActiveWorkbook.PublishObjects.Add(0, sFile, "Sheet1", "A1", 0, "", "")
     .Publish True
End With



Но мне необходимо "выгрузить"/опубликовать, только определенные столбцы. Причем, выходит, что из всей таблицы, нужна только средняя часть. Что имеется ввиду.
Есть, к примеру 10 столбцов, нужно вывести только 1, 3-6,10 (в первом столбце - названия, в остальных - данные).

Реально ли это сделать и как лучше?

Спасибо!
...
Рейтинг: 0 / 0
15.09.2015, 12:37
    #39051713
Agapov_stas
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Публикация файла excel в htm
Чтобы немного понятнее было, выкладываю файл.
Нужно отобразить к примеру только эту часть таблицы. Т.е. Закрепленные слева названия, и лишь часть данных таблицы(текущий месяц +-20 дней)
...
Рейтинг: 0 / 0
15.09.2015, 12:53
    #39051733
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Публикация файла excel в htm
Сокрытие ненужных столбцов - не помогает?
Удаление перед публикацией и откат после - не вариант?
...
Рейтинг: 0 / 0
15.09.2015, 12:57
    #39051737
Agapov_stas
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Публикация файла excel в htm
Akina, спасибо за ответ.
Нет, не помогает. Пробовал:
- Скрывать столбцы
- Указывать range(но не решается(точнее я не знаю как) моя проблема, что разные кусочки нужно показывать)
Сейчас просто пока буду копировать нужные столбцы в соседний лист. Но хотелось бы конечно без копипаста.
...
Рейтинг: 0 / 0
15.09.2015, 15:02
    #39051888
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Публикация файла excel в htm
Agapov_stasпока буду копировать нужные столбцы в соседний лист. Но хотелось бы конечно без копипаста.
AkinaУдаление перед публикацией и откат после
...
Рейтинг: 0 / 0
15.09.2015, 15:21
    #39051915
hclubmk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Публикация файла excel в htm
Код: vbnet
1.
2.
3.
4.
5.
Dim sFile As String
sFile = "C:\grafic.htm"
With ActiveWorkbook.PublishObjects.Add(xlSourceRange, sFile, "Sheet1", "$A:$F", xlHtmlStatic, , "только определенные столбцы")
     .Publish True
End With
...
Рейтинг: 0 / 0
15.09.2015, 15:29
    #39051926
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Публикация файла excel в htm
Agapov_stas,

я обычно программно формирую НТМ для просмотра в броузере или печати вордом
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim r1, r1n, r1k, c1, c1n, c1k, spath, sname, kx, jc, jr, summa, kdoc, s1, s2
Dim wd As Worksheet
'''''''''''''''''
Set wd = Worksheets("Данные")

r1 = Target.Row
r1n = 3
r1k = wd.Range("a2").End(xlDown).Row
spath = Excel.ActiveWorkbook.Path & "\"
''sname = Excel.ActiveWorkbook.Name
''''''''''''''''''''
c1 = Target.Column
c1n = c1 - 3
If c1n < 3 Then c1n = 3
c1k = c1n + 7
'MsgBox "column=" & c1n
Debug.Print r1, c1, c1n, c1k
kx = FreeFile
'Open "c:\rabc\001.htm" For Output As #kx
sname = spath & "otchet_" & Format(Now, "yyyy-mm-dd-hh-mm") & ".htm"
Open sname For Output As #kx

Print #kx, "<meta http-equiv=""Content-Type"" content=""text/html; charset=windows-1251"" />"
Print #kx, "<style>"
Print #kx, "pre{font-family:courier;font-size:10pt;}"
Print #kx, "h1{font-family:'Times New Roman';font-size:14pt;text-align:center}"
Print #kx, "h2{font-family:'Times New Roman';font-size:12pt;text-align:center}"
Print #kx, "td{font-family:'Times New Roman';font-size:10pt;text-align:left}"
Print #kx, "th{font-family:'Times New Roman';font-size:7pt;text-align:center}"
Print #kx, "p.MsoNormal , li.MsoNormal, div.MsoNormal"
Print #kx, "  {margin:0cm;text-align:center"
Print #kx, "   margin-bottom:.0001pt;font-size:10.0pt;}"
Print #kx, "</style>"
Print #kx, "<body>"
Print #kx, "<h2>"; "Справка за период "; wd.Cells(2, c1n); " -"; wd.Cells(2, c1k); "</h2>"
Print #kx, "<table border=1 width=100% cellspacing=0 cellpadding=0.05>"
Print #kx, "<thead>"
Print #kx, "<tr>"
Print #kx, "<th>"; "№№"

Print #kx, "<th>"; wd.Cells(2, 1)
Print #kx, "<th>"; wd.Cells(2, 2)
For jc = c1n To c1k
Print #kx, "<th>"; wd.Cells(2, jc)
Next jc
Print #kx, "<th>"; "итого"

Print #kx, "</thead>"
'''''''''''''''''''''''
kdoc = 0
For jr = r1n To r1k
Print #kx, "<tr>"
summa = 0
kdoc = kdoc + 1
Print #kx, "<th>"; kdoc
Print #kx, "<th>"; wd.Cells(jr, 1)
Print #kx, "<th>"; wd.Cells(jr, 2)
For jc = c1n To c1k
s1 = Trim("" & wd.Cells(jr, jc))

If Len(s1) = 0 Then
s1 = 0
End If
Print #kx, "<td style='text-align:right'>"; IIf(s1 = 0, "-", s1)
summa = summa + s1
Next jc
Print #kx, "<th>"; summa

Next jr
Print #kx, "<table>"
Close #kx
jc = Shell("winword.exe " & sname, vbMaximizedFocus)

End Sub
...
Рейтинг: 0 / 0
15.09.2015, 16:15
    #39052009
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Публикация файла excel в htm
Agapov_stas, обрати внимание на описание параметра Source в методе PublishObjects.Add.
If SourceType is xlSourceRange , Source specifies a range, which can be a defined name.
Возможно, он допускает именованный Range, состоящий из нескольких областей-столбцов?
...
Рейтинг: 0 / 0
15.09.2015, 17:05
    #39052093
hclubmk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Публикация файла excel в htm
Akinaсостоящий из нескольких областей-столбцов? Навряд ли
...
Рейтинг: 0 / 0
16.09.2015, 07:40
    #39052384
Agapov_stas
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Публикация файла excel в htm
Спасибо за помощь, уважаемые!

Akina , имеешь ввиду удаление столбцов-->опубликовать-->вернуть в исходное состояние файл excel? Попробую..Но, думаю, буду делать как показала ПЕНСИОНЕРКА .

hclubmk , да, но ведь нужно разные столбцы(диапазоны). Я так пробовал, не получилось(не знаю точнее как прикрутить несколько range).

Пенсионерка , попробую, спасибо!
...
Рейтинг: 0 / 0
16.09.2015, 08:51
    #39052411
Akina
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Публикация файла excel в htm
Agapov_stasимеешь ввиду удаление столбцов-->опубликовать-->вернуть в исходное состояние файл excel? Попробую..
Угу... Delete - Publish - Undo (или Close-NoSave).
...
Рейтинг: 0 / 0
16.09.2015, 09:39
    #39052448
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Публикация файла excel в htm
Agapov_stas,

при копировании потеряла строки
Код: vbnet
1.
2.
3.
4.
print #kx,"<html>
'''''
print #kx,"</body>"
print #kx,"</html>"



и если намереваюсь печатать вордом в альбомной ориентации добавляю строки размера/ориентации страницы
...
Рейтинг: 0 / 0
16.09.2015, 22:07
    #39053294
hclubmk
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Публикация файла excel в htm
Agapov_stas hclubmk , да, но ведь нужно разные столбцы(диапазоны). Я так пробовал, не получилось(не знаю точнее как прикрутить несколько range). Agapov_stas если пройти по ссылке hclubmk Навряд ли , то можно понять, что скомбинировать несколько диапазонов не получится (что впрочем я и не утверждал). И рекомендации там следующие: при помощи формул, или копируя данные, формировать новый непрерывный диапазон (возможно на новом листе), который потом и публиковать.
ЗЫ Метод, предлагаемый ПЕНСИОНЕРКОЙ, наверно, более правильный - думаю, делал бы именно так.
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Публикация файла excel в htm / 13 сообщений из 13, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]