有3段内容
abc#123
bbc#3333
dd#12312
批量添加#前面的文字为书签 “abc”“bbc”“dd”。
代码我找到了。但是格式不正确,求助正确格式,万分感谢。
==========分割线===
Sub AddBookMarks()
Dim LineCount As Integer, RangeStart As Long,RangeEnd As Long, MyRange As Range
Dim strBK As String On Error Resume
Next With ActiveDocument
If.Content.End <= 1 Then Exit Sub '如果没有文档内容则退出宏LineCount = .BuiltInDocumentProperties("Number of lines").Value For i= 1 To LineCount RangeStart = .GoTo(wdGoToLine, , i).Start '行起点 '如果到达最后一行,则为文档尾位置 RangeEnd = VBA.IIf(i =LineCount, .Content.End, .GoTo(wdGoToLine, , i + 1).Start) '定义一个RANGE对象 Set MyRange =.Range(RangeStart, RangeEnd) '添加书签 If InStr(MyRange,"#") > 0 Then strBK = .Range(MyRange.Start, MyRange.Start +InStr(MyRange, "#") - 1) '
MsgBox strBK MyRange.Bookmarks.AddName:=strBK '命名书签
Next End With
End Sub '----------------------
abc#123
bbc#3333
dd#12312
批量添加#前面的文字为书签 “abc”“bbc”“dd”。
代码我找到了。但是格式不正确,求助正确格式,万分感谢。
==========分割线===
Sub AddBookMarks()
Dim LineCount As Integer, RangeStart As Long,RangeEnd As Long, MyRange As Range
Dim strBK As String On Error Resume
Next With ActiveDocument
If.Content.End <= 1 Then Exit Sub '如果没有文档内容则退出宏LineCount = .BuiltInDocumentProperties("Number of lines").Value For i= 1 To LineCount RangeStart = .GoTo(wdGoToLine, , i).Start '行起点 '如果到达最后一行,则为文档尾位置 RangeEnd = VBA.IIf(i =LineCount, .Content.End, .GoTo(wdGoToLine, , i + 1).Start) '定义一个RANGE对象 Set MyRange =.Range(RangeStart, RangeEnd) '添加书签 If InStr(MyRange,"#") > 0 Then strBK = .Range(MyRange.Start, MyRange.Start +InStr(MyRange, "#") - 1) '
MsgBox strBK MyRange.Bookmarks.AddName:=strBK '命名书签
Next End With
End Sub '----------------------
