|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
26.07.2020, 02:37 | #1 |
Регистрация: 25.07.2020
Сообщений: 6
|
Сменить вид на Одна страница
Добрый день!
Не получается макросом поменять вид на Одна страница или Черновик, так как приложение Word создаётся скрытно (создаётся экселем). Получается что у него нет активного окна. А свойство View есть только у окон. Как можно решить данную проблему? В макросе есть такие строчки: Код:
Макрос может работать очень быстро (берётся некий шаблон с одной страницей, размножается и заполняется нужными данными, после чего страниц становится порядка 900штук). Но для того чтобы он работал быстро нужно предварительно убедиться что Word находится в режиме Одна страница. Данный режим после переключения в приложении сохраняется. Но не сохраняется для конкретного документа. Если в последний раз была включена галка Одна страница то документы будут открываться в этом режиме. Я же хочу в своём макросе включать данный режим автоматом, без предварительных проверок и переключений вручную. |
29.07.2020, 04:56 | #2 |
Форумчанин
Регистрация: 29.09.2008
Сообщений: 378
|
Здравствуйте.
Неверно ставите вопрос, так как wdPageFitFullPage это не вид, а масштаб. Вам надо поменять вид wdNormalView на вид wdPrintView с масштабом wdPageFitFullPage. Что-то такое: Код:
Макросы на заказ и готовый пакет - http://mtdmacro.ru/
|
02.08.2020, 16:58 | #3 |
Регистрация: 25.07.2020
Сообщений: 6
|
Ваш код это запись макрорекордера. И я это пробовал в разных вариациях. Суть в том что в режиме отладки когда жму F8 пошагово всё прекрасно работает (при этом правда делаю Word видимым). И масштаб переключается и режим черновик включается... Но когда запускается макрос через F5 эти шаги игнорируются (или что-то ещё).
Word запоминает какой был масштаб при прошлом открытии. При этом не важно какой документ открывался. По сути можно открыть файл, сменить масштаб на Одну страница и закрыть файл. Word даже не спросит сохранять файл или нет. Но масштаб сохранит. (Тут вопрос куда где и как он это хранит) И я хочу это менять макросом. Ситуация в прочем крайне редкая. Просто хотелось докопаться до сути. |
03.08.2020, 04:49 | #4 |
Форумчанин
Регистрация: 29.09.2008
Сообщений: 378
|
Раз уж вы не приводите ваш полный код, то пробуйте вариации этого кода:
Код:
Макросы на заказ и готовый пакет - http://mtdmacro.ru/
|
04.08.2020, 01:19 | #5 |
Регистрация: 25.07.2020
Сообщений: 6
|
Вождь, код слишком большой. Чтобы выцепить нужное потребуется некоторое время.
Возможно у меня на компе какой-то глюк или это глюк ворда. Вот тут вычитал что масштаб и вид сохраняются для каждого документа отдельно. Но у меня не так. Те строчки кода из первого сообщения всё же меняют масштаб. Однако на скорость макроса это не влияет. Влияет только когда я делаю это вручную! То есть когда я шаблон сохраняю с масштабом одна страница, макрос работает быстро. Но стоит только уменьшить масштаб или поменять масштаб на несколько страниц причём в ЛЮБОМ документе (и даже не сохраняя файл), макрос начинает работать медленно. При этом заметил такой глюк. Если специально сохранить шаблон с маленьким масштабом и запустить макрос то ожидаемо он отработает медленно. Затем если после такой медленной обработки зайти в шаблон который открывает макрос но при этом не сохраняет его, то окажется что масштаб изменился - стал в одну страницу (это доказывает что строчки кода из первого сообщения работают). НО если закрыть файл и снова его открыть, то можно увидеть тот специально сохранённый уменьшенный масштаб! Также если запускать макрос подряд то последующие запуски не ускоряют работу. Хотя по идее должны бы. Ведь макрос меняет масштаб и значит скорость должна измениться. Но нет. Поизучал также объекты Options. Но не нашёл среди них ничего чтобы мне могло помочь. Был там некий Options.AllowOpenInDraftView. Но он ничего не дал. Так и не понял зачем это вообще нужно. Справка особо не поясняет. |
04.08.2020, 07:36 | #6 |
Форумчанин
Регистрация: 17.06.2012
Сообщений: 974
|
В сообщении про макросы
https://programmersforum.ru/showthre...51#post1818251 при форматировании черновика и чистовика переключают вид страниц строки: ActiveWindow.View.Type = wdNormalView ActiveWindow.View.Type = wdPageView ActiveWindow.ActivePane.View.Zoom.P ageFit = wdPageFitBestFit
Случайные и Массивы https://programmersforum.ru/showthread.php?t=344371 Учим C# & basic & excel & python https://programmersforum.ru/showthre...=327446&page=5 ничего нерекомендую
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как сменить DNS? | Ivan Denis | Безопасность, Шифрование | 1 | 20.08.2017 01:15 |
Visual Basic. Дана строка символов, среди которых есть одна открывающаяся и одна закрывающаяся скобка.Вывести текст между скобками | Nember | Помощь студентам | 3 | 21.12.2013 22:04 |
Не получается сменить фон у ListView. Нужно как-то сменить обработку WM_ERASEBKGND, судя по всему | TwiX | Win Api | 2 | 09.06.2013 23:25 |
сменить IP | Андрей991 | Безопасность, Шифрование | 6 | 29.11.2011 16:52 |
как сменить ник ??? | maladoy | О форуме и сайтах клуба | 12 | 07.02.2009 19:45 |