powered by simpleCommunicator - 2.0.39     © 2025 Programmizd 02
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Публикация файла excel в htm
13 сообщений из 13, страница 1 из 1
Публикация файла excel в htm
    #39051691
Agapov_stas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Доброго времени суток!
Появился вопрос, прошу помощи.

"Выгружаю" данные из таблицы:
Код: 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
Публикация файла excel в htm
    #39051713
Agapov_stas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чтобы немного понятнее было, выкладываю файл.
Нужно отобразить к примеру только эту часть таблицы. Т.е. Закрепленные слева названия, и лишь часть данных таблицы(текущий месяц +-20 дней)
...
Рейтинг: 0 / 0
Публикация файла excel в htm
    #39051733
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сокрытие ненужных столбцов - не помогает?
Удаление перед публикацией и откат после - не вариант?
...
Рейтинг: 0 / 0
Публикация файла excel в htm
    #39051737
Agapov_stas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akina, спасибо за ответ.
Нет, не помогает. Пробовал:
- Скрывать столбцы
- Указывать range(но не решается(точнее я не знаю как) моя проблема, что разные кусочки нужно показывать)
Сейчас просто пока буду копировать нужные столбцы в соседний лист. Но хотелось бы конечно без копипаста.
...
Рейтинг: 0 / 0
Публикация файла excel в htm
    #39051888
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Agapov_stasпока буду копировать нужные столбцы в соседний лист. Но хотелось бы конечно без копипаста.
AkinaУдаление перед публикацией и откат после
...
Рейтинг: 0 / 0
Публикация файла excel в htm
    #39051915
hclubmk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: 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
Публикация файла excel в htm
    #39051926
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
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
Публикация файла excel в htm
    #39052009
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Agapov_stas, обрати внимание на описание параметра Source в методе PublishObjects.Add.
If SourceType is xlSourceRange , Source specifies a range, which can be a defined name.
Возможно, он допускает именованный Range, состоящий из нескольких областей-столбцов?
...
Рейтинг: 0 / 0
Публикация файла excel в htm
    #39052093
hclubmk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Akinaсостоящий из нескольких областей-столбцов? Навряд ли
...
Рейтинг: 0 / 0
Публикация файла excel в htm
    #39052384
Agapov_stas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо за помощь, уважаемые!

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

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

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

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



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


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