[英]Insert enclosing bookmarks at once with Word Vba
我想一次添加多個封閉書簽。
封閉的書簽不正確。 我得到“[一月]二月]三月]”,而不是[一月][二月][三月]。
這是我的初學者代碼...
Sub Execute()
Dim arrayBookmarks()
arrayBookmarks = Array("january", "february", "march")
Call ManageBookmarks(arrayBookmarks)
End Sub
Function ManageBookmarks(arrayBookmarks() As Variant)
' Code to optimize ("With", "End With")
Dim rangeBookmark As Range
For i = LBound(arrayBookmarks) To UBound(arrayBookmarks)
If ActiveDocument.Bookmarks.Exists(arrayBookmarks(i)) Then
' ...
Else
ActiveDocument.Bookmarks.Add arrayBookmarks(i)
Set rangeBookmark = ActiveDocument.Bookmarks(arrayBookmarks(i)).Range
rangeBookmark.Text = arrayBookmarks(i) ' & vbLf ' line break is ideal
ActiveDocument.Bookmarks.Add arrayBookmarks(i), rangeBookmark
End If
Next i
End Function
嘗試:
Function ManageBookmarks(arrayBookmarks() As Variant)
' Code to optimize ("With", "End With")
Dim rangeBookmark As Range, i As Long
With ActiveDocument
For i = LBound(arrayBookmarks) To UBound(arrayBookmarks)
If .Bookmarks.Exists(arrayBookmarks(i)) Then
' ...
Else
Set rangeBookmark = .Range.Characters.Last
rangeBookmark.Collapse wdCollapseEnd
.Bookmarks.Add arrayBookmarks(i), rangeBookmark
Set rangeBookmark = .Bookmarks(arrayBookmarks(i)).Range
rangeBookmark.Text = arrayBookmarks(i) ' & vbLf ' line break is ideal
.Bookmarks.Add arrayBookmarks(i), rangeBookmark
End If
Next i
End With
End Function
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.