Word VBA: после вставки разрыва страницы, мое текстовое поле на странице 1 все перейти на страницу 2 - PullRequest
0 голосов
/ 07 ноября 2018

Я пишу код MS Word VBA для генерации слова doc (документ генерируется исключительно кодом).

В самом начале я поместил несколько текстовых ящиков на страницу 1 документа с некоторым содержимым, используя код VBA ActiveDocument.Shapes.AddTextBox()....

После того, как все задачи с текстовыми полями завершены на странице 1, теперь я хочу вставить новую страницу в конце и начать размещать дополнительные текстовые поля на странице 2, используя код VBA

Я использую Selection.InsertBreak wdPageBreak в конце моего текущего кода, чтобы получить вторую страницу. Имейте в виду, в настоящее время на странице 1 нет текста, только несколько текстовых полей.

Я получаю от wdPageBreak новую страницу, но все мои законченные текстовые поля переходят на 2-ю страницу.

Что я хочу, так это после InsertBreak, у меня есть новая пустая страница2, готовая для работы, и законченные текстовые поля остаются там, где они были (страница 1)

У меня есть около 50 текстовых боксов для работы. Так что мне понадобится этот трюк снова и снова.

Новичок в программировании Word VBA, очень признателен за то, что нашли время ответить на мой глупый вопрос.

1 Ответ

0 голосов
/ 07 ноября 2018

Я нашел решение сам, я публикую здесь, надеюсь, может помочь другим людям иметь похожий вопрос.

Если у вас нет текста на странице, только фигуры, фигуры привязываются к позиции начального символа страницы. если вы используете Selection.InsertBreak для вставки новой пустой страницы, якорь перейдет на новую вторую страницу.

Таким образом, вы можете просто поставить одну строку кода перед вставкой, то есть Selection.EndKey, тогда все должно быть хорошо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...