|
Как с помощью Ole2 передать в Word список абзацев? по аналогии с repeating frame в отчетах
|
|||
---|---|---|---|
#18+
Нужно слить в документ Ворд список абзацев с жестоким форматированием. как образец "1.1. наградить петрова за то 1.2. наградить сидорова за это". В каждый абзац передается десяток переменных из формс. С выводом в Ворд единичного абзаца проблем нет, с помощью bookmarks. Не понимаю, как сделать повтор абзаца. Это не таблица... и не слияние полей... Текст нельзя изначально собрать в абзац целиком, так как нужно применять отдельное форматирование на некоторые элементы. ... |
|||
:
Нравится:
Не нравится:
|
|||
02.07.2012, 20:56 |
|
Как с помощью Ole2 передать в Word список абзацев? по аналогии с repeating frame в отчетах
|
|||
---|---|---|---|
#18+
rybbaС выводом в Ворд единичного абзаца проблем нет, с помощью bookmarks. С выводом многих абзацев проблем тоже нет ))) Хотя бы Copy-past того же bookmarks ))). Решений может быть как грязи. Каким образом маркировать исходный текст (шаблон) - нужно просто придумать. Технически проблем нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 14:05 |
|
Как с помощью Ole2 передать в Word список абзацев? по аналогии с repeating frame в отчетах
|
|||
---|---|---|---|
#18+
Leonid Kudryavtsev, копипаст абзаца с закладками не получается почему-то, они исчезают при этом. Как-то вручную описывать раскопирование абзаца - не очень подходит, отчетов очень много, нужно универсальное решение. Пока не вижу даже возможных путей, откуда зайти. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 18:21 |
|
Как с помощью Ole2 передать в Word список абзацев? по аналогии с repeating frame в отчетах
|
|||
---|---|---|---|
#18+
rybbaкопипаст абзаца с закладками не получается почему-то, они исчезают при этом Кто исчезает? Абзацы или закладки? Если закладки - вернуть обратно, закладка описывается именем и смешением начала-конца. В любом случае: запомнить, скопировать, вернуть закладки (создать заново) не проблема. Рабочий демо-тест в студию (запускаемый). ... |
|||
:
Нравится:
Не нравится:
|
|||
05.07.2012, 18:25 |
|
Как с помощью Ole2 передать в Word список абзацев? по аналогии с repeating frame в отчетах
|
|||
---|---|---|---|
#18+
rybba, сильно не вник в проблему, но лично я делаю так: - пишешь макрос в ворде, то что тебе примерно нужно, т.е. просто выбираешь пункт Записать макрос (ничего сам не кодируя) - потом открываешь его на изменение, будет код вида Selection.MoveUp Unit:=wdLine, Count:=1 Selection.PasteAndFormat (wdPasteDefault) преобразуешь его в ole для подсказки по объектам пользуешься в VB F2 (object browser) args:=CLIENT_OLE2.CREATE_ARGLIST; CLIENT_OLE2.ADD_ARG(args, wdLine); CLIENT_OLE2.ADD_ARG(args, 1); CLIENT_OLE2.INVOKE(selectionObj,'MoveUp', args); CLIENT_OLE2.DESTROY_ARGLIST(args); args:=CLIENT_OLE2.CREATE_ARGLIST; CLIENT_OLE2.ADD_ARG(args, wdPasteDefault); CLIENT_OLE2.INVOKE(selectionObj,'PasteAndFormat', args); CLIENT_OLE2.DESTROY_ARGLIST(args); Правда я очень сложные отчёты не строил, и мне вполне хватило такого подхода ... |
|||
:
Нравится:
Не нравится:
|
|||
06.07.2012, 10:35 |
|
|
start [/forum/topic.php?fid=51&msg=37868165&tid=1878458]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
155ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
2ms |
others: | 263ms |
total: | 522ms |
0 / 0 |