VBA (Word) Как вставить разрыв страницы в абзаце? - PullRequest
0 голосов
/ 26 января 2020

Я пытаюсь вставить разрыв страницы в указанном c абзаце, но он всегда вставляет разрыв страницы в первой строке / абзаце документа, я не понимаю, почему. Есть идеи?

With Word.ActiveDocument
    .Paragraphs(15).Range.Collapse Direction:=wdCollapseEnd
    .Paragraphs(15).Range.InsertBreak WdBreakType.wdPageBreak
    'or this way (Is there a differece): .Paragraphs(15).Range.InsertBreak Type:=wdPageBreak
End With

Спасибо, Юлий

1 Ответ

1 голос
/ 26 января 2020

Я вижу что-то другое: для меня он заменяет указанный абзац на разрыв страницы, как описано в справке topi c.

В любом случае ключом к этому является работа с указанным c Range объектом. Невозможно «свернуть» весь 15-й абзац - метод не имеет действия. Абзац Range необходимо назначить независимому объекту Range, который может быть свернут , а затем разрыв страницы вставляется в этот объект Range.

Например:

Sub TestInsertPageBreak()
    Dim paraRange As Word.Range

    With ActiveDocument
        Set paraRange = .Paragraphs(15).Range
        paraRange.Collapse Direction:=wdCollapseEnd
        paraRange.InsertBreak WdBreakType.wdPageBreak
    End With
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...