通过加载项为Excel创建快捷方式

时间:2019-05-15 11:53:37

标签: excel vba excel-addins

我正在尝试创建一个Excel插件,允许我使用快捷方式返回到已激活的上一个选项卡。

现在,我可以在常规的excell电子表格中使用它。打开VBA。在“ Microsoft Excel对象”下的“ ThisWorkbook”中,我有以下代码:

Private Sub Workbook_Open()

Call Module1.CreateShortcut

End Sub

这将调用我在模块中编写的宏“ CreateShortcut”,该模块在每次打开工作簿时都会创建快捷方式。这是它调用的宏:

Sub CreateShortcut()

Application.OnKey "^{`}", "GoToLast"

End Sub

在“ Microsoft Excel对象”下的“此工作簿”中也有以下代码:

Private Sub Workbook_SheetDeactivate(ByVal Sh As Object)
Set LstSht = Sh
End Sub

此代码跟踪我激活的上一张纸。

现在,如果我使用上面创建的快捷方式,它将调用宏“ GoToLast”,该宏通过以下方式在模块中进行编码:

Public LstSht As Worksheet
Sub GoToLast()
LstSht.Activate
End Sub

这会将我带到我激活的上一张纸上。

现在,当我要将其用作加载项时,就会出现问题。我所做的是将此模板工作表另存为加载项。然后,我从另一个工作簿中安装了外接程序。但是,我打开的新工作簿中“ Microsoft Excel对象”下的“ ThisWorkbook”不包含与加载项相同的代码。因此,我似乎无法通过'Workbook_SheetDeactivate'跟踪最后一个活动表。有谁知道我如何创建此加载项,以便它可以跟踪上一个处于活动状态的工作表?

我已经在互联网上进行搜索,但是我正在努力寻找解决方案。

0 个答案:

没有答案