用于模拟Ctrl +单击书签/超链接的VBA宏

时间:2017-09-13 04:52:04

标签: vba ms-word word-vba

我试图在Microsoft Word中编写VBA宏来执行与Ctrl + click相同的操作(按照链接或转到书签)。

我已尝试过SendKeys,但我认为这不适用于鼠标左键点击。

我实际上提出了一个涉及使用的部分工作解决方案 Selection.GoTo What:=wdGoToBookmark, Name:=BLA但不幸的是,这意味着我无法使用ctrl +<因为似乎没有保存光标以前的历史记录。

因此,实际上有一种方法可以将Ctrl +单击操作绑定到另一个按钮,而不是提出我自己的解决方案吗?或者有没有办法编写一个宏来执行相同的操作,包括跟踪光标的历史记录?

1 个答案:

答案 0 :(得分:0)

以下代码应该做你想要的。将其安装在标准代码模块上。

Option Explicit

    Dim ReturnRange As Range

Sub GotoBookmark()
    ' 13 Sep 2017

    With Selection
        If .Hyperlinks.Count Then
            Set ReturnRange = .Range
            .Hyperlinks(1).Follow
        End If
    End With
End Sub

Sub ReturnToLink()
    ' 13 Sep 2017

    If Not ReturnRange Is Nothing Then ReturnRange.Select
End Sub

出于测试目的,在文档中创建书签以及指向它的超链接。选择超链接并运行Sub GotoBookmark。然后运行程序ReturnToLink返回到您来自的地方。请注意,您可以从任何地方多次返回。

您可能希望创建键盘快捷键来调用两个潜艇。