【问题标题】:VBA Remove Custom Toolbar from Ribbon Excel 2013VBA 从功能区 Excel 2013 中删除自定义工具栏
【发布时间】:2016-06-22 08:54:34
【问题描述】:

我设法在 Excel 上创建了一个自定义工具栏,我似乎无法通过代码或选项摆脱它

我可以禁用功能区,但随后可以看到其他功能区自定义工具栏

如何循环浏览加载项菜单的菜单选项并删除图像中此处似乎只是一个组的内容??

【问题讨论】:

  • 你不能在“文件”这个词的正下方右键单击并删除工具栏吗?
  • 没有上下文菜单
  • 我的意思是在 AddIns 选项卡上,您可以在下方看到 FILE 一词,右键单击并查看您获得的选项。

标签: vba excel


【解决方案1】:

如果包含CommandBar 自定义的工作簿被打开或作为加载项加载,则会出现加载项功能区选项卡。 CommandBar 是代表旧菜单和工具栏的 VBA 对象(2007 年之前/功能区之前)。

如果运行的代码使用CommandBar 对象创建旧式菜单和工具栏或向Office 应用程序中内置的现有控件添加控件,也会显示此选项卡。我记得,“自定义工具栏”组包含所有已定义的非内置工具栏(它们不会出现在单独的组中)。

我的档案中有以下宏,用于循环应用程序中的所有 CommandBar 对象。如果它们不是内置的(随产品一起提供),则有关它们的信息将写入 VBA 编辑器即时窗口 (Ctrl+G) 并被删除。内置命令栏重置为安装默认值 - 对默认值的更改也将显示在加载项选项卡中。

Sub DetermineNonBuiltinCommandBars()
    Dim cb As Office.CommandBar

    For Each cb In CommandBars
        If Not cb.BuiltIn Then
            Debug.Print cb.Context & ", " & cb.Name
            cb.Delete
        Else
            cb.Reset
        End If
    Next
End Sub

【讨论】:

  • 正是我想要的,谢谢。我确实尝试在 CommandBars 周围循环,但没有通过 BuiltIn 属性
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-22
  • 2013-09-02
  • 1970-01-01
  • 1970-01-01
  • 2013-08-03
  • 1970-01-01
相关资源
最近更新 更多