Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Word
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 23.01.2009, 21:25   #11
tolikman
Форумчанин
 
Регистрация: 25.08.2008
Сообщений: 159
По умолчанию

Цитата:
Сообщение от viter.alex Посмотреть сообщение
Примерно так
Код:
  With Selection
    .Find.Style = ActiveDocument.Styles("Заголовок 1")
    If .Find.Execute Then
   'здесь делаем, что нужно с найденным.
    End If
  End With
Он не может выделить разные кусочки, у меня выделил первый найденный кусок и все.
Склоняюсь к тому, что выборочное выделение посредством VBA не возможно. Надо искать другие варианты решения проблемы...
tolikman вне форума Ответить с цитированием
Старый 23.01.2009, 22:21   #12
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Естественно, что выделил только первый кусок, а за ним еще один, пока Find.Execute не вернет False, т.е. ничего больше подобного не найдено.
Так потихоньку и переберем все, что соответствует нашему форматированию. Закончим с одним форматированием, перейдем к другому.
Нужно было так писать, тогда понятнее:
Код:
  
With Selection
  .Find.Style = ActiveDocument.Styles("Заголовок 1")
  Do While .Find.Execute
 'здесь делаем, что нужно с найденным.
  Loop
End With
Лучше день потерять — потом за пять минут долететь!©
viter.alex вне форума Ответить с цитированием
Старый 24.01.2009, 20:09   #13
Sasha_Smirnov
Особый статус
Участник клуба
 
Аватар для Sasha_Smirnov
 
Регистрация: 24.11.2008
Сообщений: 1,535
По умолчанию

Чтобы не было внизу страницы «висячих строк» и пустого места, надо не высоту абзацев регулировать, а использовать выравнивание по вертикали. При этом обрабатываемая страница должна заканчиваться управляющим символом «Разрыв страницы» (вводится через контрол-ввод [Ctrl-Enter], код пока не знаю).

В принципе, если посвятить и авторов в немудрящие приёмы вертикального выравнивания в их таблицах, то такой атавизм, как печать нескольких «пустых строк», постепенно отомрёт. Мечты-мечты!

Изменение вертикального выравнивания текста
В меню Файл выберите команду Параметры страницы, а затем откройте вкладку Макет.
В списке Вертикальное выравнивание выберите нужный параметр.

Последний раз редактировалось Sasha_Smirnov; 24.01.2009 в 20:14. Причина: цитата справочной системы.
Sasha_Smirnov вне форума Ответить с цитированием
Старый 24.01.2009, 20:21   #14
КотФиларет
 
Регистрация: 21.06.2007
Сообщений: 8
По умолчанию

Всем спасибо за то, что откликнулись.

Я применяю стили.

Думаю, что вертикальное выравнивание не сработает, т.к. по мере наполнения страницы текстом, текст поднимается автоматически.
КотФиларет вне форума Ответить с цитированием
Старый 24.01.2009, 22:29   #15
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Цитата:
Сообщение от Sasha_Smirnov Посмотреть сообщение
При этом обрабатываемая страница должна заканчиваться управляющим символом «Разрыв страницы» (вводится через контрол-ввод [Ctrl-Enter], код пока не знаю).
А я знаю!
Код:
Selection.InsertBreak wbPageBreak
Лучше день потерять — потом за пять минут долететь!©
viter.alex вне форума Ответить с цитированием
Старый 24.01.2009, 23:00   #16
Sasha_Smirnov
Особый статус
Участник клуба
 
Аватар для Sasha_Smirnov
 
Регистрация: 24.11.2008
Сообщений: 1,535
По умолчанию На всякий случай

А теперь и я знаю
Код:
SendKeys "^~", True
("^" — это Control, "~" — Enter, True — ожидание).

Вообще-то я о коде не VBA, а Windows (который вводят на правой цифровой клавиатуре, удерживая левый альт).
Теперь знаю: Alt-012.
Sasha_Smirnov вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите написать макрос для... КотФиларет Microsoft Office Word 6 23.01.2009 00:35
Помогите написать макрос Neo007 Microsoft Office Excel 4 24.10.2008 07:25
Нужно написать макрос для Word. Hoomer Фриланс 2 24.09.2008 12:19
Помогите написать макрос выбора по дате/времени и сортировке по нужным параметрам rf_dru Microsoft Office Excel 39 04.07.2008 12:36
помогите, пожалуйсто, написать макрос для excel bacalavr Microsoft Office Excel 2 04.04.2008 11:39