Я пытаюсь сделать код для запуска через текстовый документ, содержащий элементы управления содержимым повторяющихся разделов (RepSecCC), содержащие несколько вложенных CC внутри. Я хочу написать макрос, который для каждого RepSecCC будет генерировать новый документ Word (из шаблона) и заполнять его информацией из вложенных CC.
Проблема в том, что мой текущий код генерирует только один документ и заполняет его информацией из последнего RepSecCC. Я не могу понять, почему он пропускает все остальные RepSecCC. Где мне изменить свой код?
Dim objWord As Object
Dim objDoc As Object
Dim pack As String, Reg_No As String, VP_name As String,
Dim CC As Word.ContentControl
Dim rCC As Word.ContentControl
Set objWord = CreateObject("Word.Application")
MsgBox "Document's are generated. Please wait"
For Each rCC In ActiveDocument.ContentControls
If rCC.Title = "New_section" Then
For Each CC In rCC.Range.ContentControls
If CC.Tag = "LI_NO" Then
Reg_No = CC.Range.Text
ElseIf CC.Tag = "VP_pav" Then
VP_name = CC.Range.Text
ElseIf CC.Tag = "Pack" Then
pack = CC.Range.Text
pack = UCase(Left(pack, 1)) & Mid(pack, 2)
End If
Next CC
Set objDoc = objWord.Documents.Add(Template:="S:\bendri\VRS\VRS Administravimas\6 Lygiagretus importas\LI registracijos sarasas\LI_sablonasM.dotm", NewTemplate:=False, DocumentType:=0)
objWord.Visible = True
With objDoc
.ContentControls.Item(1).Range.Text = Reg_No
.ContentControls.Item(2).Range.Text = VP_name
.ContentControls.Item(4).Range.Text = pack
End With
End If
Next rCC
MsgBox "Finished. Please continue"
End Sub