Word 2007 Vba - Перейти к заполнителю с помощью макроса - PullRequest
1 голос
/ 24 ноября 2010

Хорошо, я постоянно борюсь с Microsoft, поскольку создаю несколько шаблонов для нескольких клиентов. Моя проблема в том, что простые заполнители текстовых полей, разбросанные по всему документу, позволяют мне нажимать TAB, чтобы перейти к следующему заполнителю. Очень похоже на порядок табуляции в Visual Studio. Но по какой-то странной причине это не работает с заполнителями текстовых полей. И мне нужно использовать форматированный текст для нескольких текстовых полей, потому что пользователь должен иметь возможность изменять форматирование отдельных символов. Это невозможно с простыми текстовыми полями.

Итак, я подумал, возможно ли это с помощью макросов? Например, если заполнитель текстового поля выбран и макрос запущен, перейдите к следующему заполнителю?

1 Ответ

0 голосов
/ 01 февраля 2011

Доступ к объектам Shape / TextBox можно получить через

ThisDocument.Shapes.Item(index)

и проверяя возвращенный объект Shape на

theShape.Type = msoTextBox

Однако объекты Shape будут возвращены в том порядке,были созданы, а не их порядок на странице / документе.Чтобы найти «следующий» TextBox, вам, вероятно, придется пройтись по всем TextBox и просмотреть их местоположение (.Top, .Left и т. Д.), Чтобы найти правильное, к которому нужно перейти:

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