View Single Post
 
Old 06-06-2014, 09:56 AM
jpb103's Avatar
jpb103 jpb103 is offline Windows 7 64bit Office 2007
Advanced Beginner
 
Join Date: May 2014
Location: Thunder Bay, Ontario
Posts: 58
jpb103 is on a distinguished road
Default

A google search uncovered the following code:
Code:
Option Explicit
Sub FindNextBookmark()
Dim oBookmark As Bookmark
Dim nCurrentPosition As Long
Dim nPosition As Long
Dim nFirstPosition As Long
Dim sFirstBookmark As String
Dim nNextPosition As Long
Dim sNextBookmark As String
Dim oRng As Range
If Documents.Count > 0 Then
    Set oRng = Selection.Range
    nCurrentPosition = Selection.Range.Start
    nNextPosition = 0
    nFirstPosition = 0
    For Each oBookmark In ActiveDocument.Bookmarks
        nPosition = oBookmark.Start
        If nFirstPosition = 0 _
            Or nPosition < nFirstPosition Then
            nFirstPosition = nPosition
            sFirstBookmark = oBookmark.name
        End If
        If nPosition > nCurrentPosition _
            And (nPosition < nNextPosition _
            Or nNextPosition = 0) Then
            nNextPosition = nPosition
            sNextBookmark = oBookmark.name
        End If
    Next oBookmark
    If nNextPosition > 0 Then
        ActiveDocument.Bookmarks(sNextBookmark).Range.Select
    ElseIf nFirstPosition > 0 Then
        ActiveDocument.Bookmarks(sFirstBookmark).Range.Select
    End If
    oRng.End = Selection.Range.End
End If
MsgBox oRng
End Sub
Reply With Quote