如何在Excel中向右键单击/上下文菜单添加自定义按钮?


Excel 提供了上下文菜单,只要您右键单击单元格,就会加载许多选项。此菜单使您可以执行各种任务。您可能需要向上下文菜单添加一些功能,尤其是一些您经常使用的功能。不幸的是,您无法像编辑其他菜单那样编辑上下文菜单(通过从“工具”菜单中选择“自定义”)。这是编辑上下文菜单的唯一方法。单元格菜单是最常见的上下文菜单形式,大多数人都熟悉并使用它。

本文旨在讨论使用 VBA 代码将自定义代码按钮添加到 Excel 右键菜单的过程。

使用 VBA 代码向上下文菜单添加自定义按钮

步骤 1

打开一个 Excel 表格,按 Alt 和 F11 键 **(Alt+F11)** 打开 Microsoft Visual Basic for Applications 窗口。请参见下图。

步骤 2

之后,从菜单栏中选择 **插入 > 模块** 以调出弹出式模块窗口。请参见下图。

步骤 3

打开模块窗口后,在其中键入以下 VBA 代码。

Sub AddItemToContextMenu()
   Dim cmdNew As CommandBarButton
   Set cmdNew = CommandBars("cell").Controls.Add
   
   With cmdNew
      .Caption = "My Button"
      .OnAction = "MyButton"
      .BeginGroup = True
   End With
End Sub

添加 VBA 代码后,按 **F5** 或单击 **运行** 选项卡。然后按 **Alt + Q** 键退出 Microsoft Visual Basic for Applications 窗口。

您唯一需要更新的是 `.Caption` 属性,将其更改为您要使用的任何菜单文本,并调整 `.OnAction` 属性,使其指向要执行的所需命令或宏。

如果您以后决定不再需要菜单选项,可以使用以下宏。

Sub RemoveContextMenuItem()
   On Error Resume Next
   CommandBars("cell").Controls("My Button").Delete
End Sub

要利用此功能,请将显示为“我的按钮”的文本替换为您在上面编写的宏的 `.Caption` 属性中使用的文本。在此特定宏中,`On Error` 语句的存在只是为了防范指定宏项未包含在之前的添加中。

现在选择任何单元格并右键单击,您将看到已添加到列表中的“我的按钮”按钮。

更新于:2022年9月12日

4K+ 次查看

启动您的 职业生涯

完成课程后获得认证

开始
广告