Вставка фона на все страницы
Sancho / 10.11.2011, 22:42/00:41
Форум:
Этот очень маленький макрос вставляет содержимое буфера обмена на каждую страницу документа и перемещает его в самый низ.
Sub PasteForEachPage()
Dim sr As New ShapeRange, p As Page
For Each p In ActiveDocument.Pages
p.Activate
Set sr = ActiveDocument.ActivePage.ActiveLayer.PasteEx
sr.OrderToBack
Refresh
Next
End Sub
Как использовать:
- Вырезаем (Ctrl+X) со страницы необходимые объекты
- Запускаем макрос
Может пригодиться для пользователей макроса cdrpro.ru/cardgenerator
На мой взгляд, немного слабое место этого макроса это (Ctrl+X)или(Ctrl+C). Дело в том, что на компьютерах у дизайнеров бывает много установленных программ, а Корел сохраняет для каждой из них свою версию буфера обмена. В результате копирование иногда занимает много времени. Мне кажется, что везде, где только можно лучше использовать дублирование(Ctrl+D)(в данном примере, можно переместить на поле рядом со страницей, там надублировать, а дальше по тексту)
а не проще ли мастер-слой использовать?
В некоторых случаях страницы оказываются под мастер-слоем и надо лезть в интерфейс и потом на каждой странице перемещать слои. А страниц в Кореле 999 шт.
Кроме того, Корел используют офис-менеджеры, секретари, разные торговые агенты и пр. - люди, которые пользуются программой четыре раза в год и каждый раз с трудом вспоминают, как начать ввод текста. Таким людям не надо знать ничего про слои
i_Mikha, хватает и одного слоя чтобы переместились все.
Sancho, может добавишь этот код в SanM_Tools - sToolsClipboard
Некоторые люди сталкивались с противоположным явлением и потом почему-то становились очень агрессивны
Как вас легко тролить :D
Des425 тут всё сложно, времени нет... боюсь что новые версии всех макросов будут только после выхода Х6...
i_Mikha, откуда инфа про 999 страниц? :) я смог добавить 1500 вот таким простым макросом:
Sub AddPages()
For i = 1 To 1500
ActiveDocument.AddPages 1
Next
End Sub
Правдо пришлось подождать, даже на моём i5