Я использую VBA для создания документа Word, который содержит серию таблиц.После определенных таблиц я хочу вставить разрыв страницы и перейти к новой таблице на следующей странице.Мой код добавляет разрыв страницы, но точка вставки перемещается в начало документа, и поэтому следующая таблица оказывается вложенной в первую ячейку первой таблицы.
Dim workRange As Word.Range
Set HeaderTableId = WordDoc.Tables.Add(Range:=wrdSel.Range, numcolumns:=3, numrows:=1, AutoFitBehavior:=wdWord9TableBehavior)
' (code to add rows goes in here)
Set workRange = HeaderTableId.Range
With workRange
.Collapse WdCollapseDirection.wdCollapseEnd
.InsertAfter vbCr
.Collapse WdCollapseDirection.wdCollapseEnd
End With
' (This correctly separates the next table from the previous one)
Set WarningsTableId = WordDoc.Tables.Add(Range:=workRange, numcolumns:=1, numrows:=1, AutoFitBehavior:=wdWord9TableBehavior)
Set RowId = WarningsTableId.Rows.Add
' (code to add rows goes in here)
Set workRange = WarningsTableId.Range
With workRange
.Collapse (WdCollapseDirection.wdCollapseEnd)
.InsertAfter vbCr
.Collapse WdCollapseDirection.wdCollapseEnd
End With
' Finally, nothing more needed on this page, so insert a page break
With workRange
.Collapse (WdCollapseDirection.wdCollapseEnd)
.InsertBreak (WdBreakType.wdPageBreak)
.Collapse WdCollapseDirection.wdCollapseEnd
End With
' The processs then loops back to the top to add a new HeaderTable,
' but the new table appears nested within the first cell of the first HeaderTable.