簡體   English   中英

Word VBA-檢查光標是否在兩個書簽之間

[英]Word VBA - check if cursor is between two bookmarks

我正在使用Word中的Macro(它也使用Excel,但使用nvm),並且需要檢查光標當前是否在兩個特定的書簽之間。

老實說,我不知道如何解決這個問題。 我用谷歌,我用stackoverflow搜索,但沒有找到關於這個主題。 這是我的第一個VBA for Word。

請理解,我沒有提供任何代碼-正如我所說,不知道如何嘗試編寫代碼,我的研究也未返回任何結果。

由於檢查選擇的開頭是否在按名稱傳遞給函數的2個書簽之間,因此以下函數將返回False或True。 傳遞書簽名稱的順序無關緊要。

Function BetweenBookmarks(FirstBookmarkName, SecondBookmarkName)

    If Selection.Start > ActiveDocument.Bookmarks(FirstBookmarkName).Range.End _
        And _
        Selection.End < ActiveDocument.Bookmarks(SecondBookmarkName).Range.Start Then

            BetweenBookmarks = True

    ElseIf Selection.Start > ActiveDocument.Bookmarks(SecondBookmarkName).Range.End _
        And _
        Selection.End < ActiveDocument.Bookmarks(FirstBookmarkName).Range.Start Then

            BetweenBookmarks = True
    Else

            BetweenBookmarks = False
    End If
End Function

可以通過以下方式調用函數:

Debug.Print BetweenBookmarks("First", "Second")
Debug.Print BetweenBookmarks("Second", "First")

您可以通過更改函數中的.End.Start屬性自行進行其他修改。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM