Можно ли добавить повторяющийся раздел Content Control раздел с VBA? - PullRequest
0 голосов
/ 21 декабря 2018

Я создал шаблон Word с Rontent Control (RSCC) повторяющегося раздела , содержащий другие Content Controls .Также у меня есть книга Excel с информацией, которая должна идти в упомянутый шаблон Word.Я пытаюсь создать макрос, который будет заполнять шаблон Word информацией из выбранных строк в книге Excel (каждая строка в новом разделе RSCC).

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

Я добавляю иллюстрации того, что я пытаюсь сделать:

example

Проблема в том, что я не могу найти код для выполнениято же самое с VBA.Я попытался записать процесс, но записанный макрос пуст (?!).

В поисках ответа я нашел эту ветку в StackOverflow, он задает мой вопрос, но он был болееили менее без ответа на мое понимание.Комментарий в этой теме перенаправлен на старую ветку на форуме Microsoft , но я не нашел решения этой проблемы (или, по крайней мере, я не совсем ясно понял, как мне к ней подходить).

Так какодной нити почти 5 лет, другой 2 года.Мой вопрос, возможно ли добавить еще один раздел в RSCC с VBA?Может быть, кто-то нашел способ сделать это в прошлом году или около того?

1 Ответ

0 голосов
/ 21 декабря 2018

В объектной модели Word есть коллекция и объект для управления содержимым повторяющегося раздела: RepeatingSectionItems и RepeatingSectionItem.Последний имеет два метода вставки: вставка до или после RepeatingSectionItem.

. Вот пример, показывающий, как ссылаться на элемент управления содержимым повторяющегося раздела в документе, получить первый или последний элемент и вставить новыйодин за ним.

Sub AddRepeatingSection()
    Dim cc As Word.ContentControl
    Dim repCC As Word.RepeatingSectionItem

    Set cc = ActiveDocument.SelectContentControlsByTitle("RepCC").Item(1)
    Set repCC = cc.RepeatingSectionItems.Item(1)
    'Or to get the last one:
    'Set repCC = cc.RepeatingSectionItems.Item(cc.RepeatingSectionItems.Count)
    repCC.InsertItemAfter        
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...