Статьи из блога

Статьи из блога

Макрос вставки разрыва страницы перед некоторым словом

Рубрика: Вопрос-Ответ, Макросы
Метки: | | |
Среда, 9 апреля 2008 г.
Просмотров: 2952
Подписаться на комментарии по RSS
Версия для печати

[Ссылки на статью]

Сергей спрашивает:

Как реализовать макрос, который бы по тексту расставлял разрыв страницы в определенных местах, например, перед словом "Отчет"?

Можно использовать следующий макрос:

Sub insBreakPage()
'Вставка разрывов страниц перед словом "Отчет"
With Selection.Find
    .ClearFormatting
    .Replacement.ClearFormatting
    .Forward = True
    .Wrap = wdFindContinue
    .MatchCase = True 'Учитываем регистр искомого слова
    .Text = "Отчет" 'ищем слово
    .Replacement.Text = "^m^&^p"  'производим замену
    .Execute Replace:=wdReplaceAll
End With
End Sub

Если вы не знаете, как подключить к документу и применить этот макрос, изучите следующие заметки с сайта:

Создание макроса из готового кода

Автоматическая запись макроса

]]>twitter.com facebook Вконтакте Google Buzz google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru]]>

Комментариев: 7

  1. Михаил
    02.05.2008 в 10:08 | #1

    не работает у меня этот макрос, ошибру пишет. А так, он мне бы очень пригодился...

  2. 02.05.2008 в 14:33 | #2

    Михаил, что именно за ошибка вам выдается?

  3. Михаил
    12.05.2008 в 06:23 | #3

    Прошу прощения, Антон. Макрос скорее всего работает. Просто я искал макрос аналогичного действия для Excel в поисковике, а натолкнулся на ваш и пытался его вставить в excel.

  4. Алёна
    10.03.2009 в 12:28 | #4

    как сделать, чтоб перед первым попавшимся словом вставлять разрыв?

  5. Артем
    22.08.2009 в 20:59 | #5

    Подскажите пожалуйста, как изменить этот макрос так, чтобы разрыв страницы происходил ПОСЛЕ каждого пятого найденного слова Отчет?

  6. 23.08.2009 в 14:55 | #6

    Артем, попробуйте вот такой макрос:

    Sub insBreakPageAfter5word()
    'Вставка разрывов страниц после каждого 5-го слова "Отчет"
    Dim i As Long
    Selection.HomeKey Unit:=wdStory  'переходим в начало документа
    With Selection.Find
       .ClearFormatting
       .Replacement.ClearFormatting
       .Forward = True
       .Wrap = wdFindContinue
       .MatchCase = True 'Учитываем регистр искомого слова
       .Text = "Отчет" 'ищем слово
       'Запускаем цикл поиска
       Do While .Execute
          i = i + 1   'считаем найденные слова
          If i = 5 Then
             Selection.Collapse wdCollapseEnd
             Selection.InsertBreak wdPageBreak
             i = 0 'обнуляем счетчик для нового отсчета
          End If
       Loop
       MsgBox "Закончено"
    End With
    End Sub

  7. Артем
    23.08.2009 в 15:57 | #7

    Спасибо ОГРОМНОЕ. Все работает просто СУППЕР!

Оставьте комментарий!

(обязательно)

^ Наверх