Как получить текст, написанный в элементе управления содержимым простого текста в Word через VBA

Я до сих пор не понял, как использовать VBA в Word. У меня есть элемент управления содержимым обычного текста, где наши сотрудники будут писать какой-то текст. Этот текст будет добавлен в электронное письмо. Но как мне получить этот текст? Хотелось бы примерно такого:

preparerText = ActiveDocument.ContentControls("PreparerText").Range.Text

Но не работает.

Я пытался в Google, как это сделать, но не могу найти ответа (или, возможно, ответ есть, но я просто не понимаю, как его использовать в моем контексте)

Информация об элементе управления содержимым, из которого я хочу получить текст:
 Информация об элементе управления содержимым, из которого я хочу получить текст


person Anna    schedule 03.05.2021    source источник
comment
Я уже показал вам, как это сделать в другом потоке (stackoverflow.com/questions/67356590/) - через .Range.Text! На самом деле не имеет значения, простой ли это текст, форматированный текст, раскрывающийся список, поле со списком или дата, элемент управления содержимым, все они читаются одинаково.   -  person macropod    schedule 03.05.2021


Ответы (1)


Если ваши элементы управления контентом имеют уникальные заголовки, это может быть очень просто:

preparerText = ActiveDocument.SelectContentControlsByTitle("PreparerText")(1).Range.Text
person Timothy Rylatt    schedule 03.05.2021
comment
Кажется, я много лет делал это жестким путем. Хороший. - person K.Dᴀᴠɪs; 03.05.2021
comment
Большое спасибо. Я пытался взглянуть на код, который вы давали раньше, но у меня просто не получалось заставить его работать. Я забыл (1). - person Anna; 03.05.2021