Word VBA:如何修正FO R EACH循环以将书签添加到每个句子?

问题描述 投票:0回答:2

在Word docx中:我正在尝试为每个句子添加一个书签。例如,第一句将是书签“ bmarkpg01”,第二句将是书签““ bmarkpg01ln01col01””。我的代码仅在第一句中添加了一个书签,并且没有循环到文档末尾。

我已经为每个循环尝试了a,以尝试每个以句子发送的内容以及每个bmark的书签。

Sub tryAddBmarkatSentence()
Dim myRange As Range
Set myRange = ActiveDocument.Content
Dim bmark As Bookmark

Application.ScreenUpdating = False

For Each MySent In ActiveDocument.Sentences
    For Each bmark In ActiveDocument.Bookmarks
        ActiveDocument.Bookmarks.Add Name:="pmark" & bmark.Range.Information(wdActiveEndAdjustedPageNumber), Range:=myRange 'bmark name would have added info of page, line, and col number. here as example is pagenumber.

    Next
Next

End Sub

预期结果:在整个文档中,每个句子都有对应的书签和书签名称(“ bmarkpg01ln01col01”,“ bmarkpg01ln02col10”等)]]

实际结果:仅将一个书签添加到文档的第一句。

在Word docx中:我正在尝试为每个句子添加一个书签。例如,第一句将是书签“ bmarkpg01”,第二句将是书签““ bmarkpg01ln01col01””。我的代码...

vba for-loop ms-word bookmarks
2个回答
0
投票

就问题的要求而言,以下内容对我有用。


-1
投票
你可以这样尝试
© www.soinside.com 2019 - 2024. All rights reserved.