我正在修改 Excel 文件的功能区,隐藏所有默认选项卡和上下文选项卡,但仅显示我自己的选项卡。但是,一旦安装了带有自己选项卡的任何加载项,这些选项卡仍然会显示,因为我不知道如何解决它们。
我知道您可以使用 <ribbon startFromScratch="true">
删除所有选项卡,但我需要将它们保留在适当的位置(我实际上使用 getVisible 回调对用户隐藏它们,但向管理员显示它们)。
那么,以下问题:
- 有没有办法为所有未知的选项卡应用“默认”getVisible 回调(我猜答案是否定的)
- 如何找出其他加载项选项卡的 tabID
- 鉴于 PowerPivot 越来越广泛(尤其是在 Excel 2013 中) - 该选项卡的 tabID 是什么?
最佳答案
这是一个很棒的问题,关于使用第三方功能区的文档或示例很少。我已经做了很多挖掘工作,可以帮助您完成您想要的大部分事情。我会稍微乱序地回答你的问题,但就这样吧。
3) PowerPivot 插件的选项卡 ID 是一个限定符 ID(因此必须与 idQ 一起使用),并且是 tabGemini
。您必须在命名空间中使用它:Microsoft.AnalysisServices.Modeler.FieldList
。
您可以通过向架构添加命名空间来检查这一点:
xmlns:x1="Microsoft.AnalysisServices.Modeler.FieldList"
然后在声明选项卡 ID 时,使用以下命令将选项卡插入 PowerPivot 选项卡之前:
insertBeforeQ="x1:tabGemini"
2) 我很难找到 PowerPivot 的选项卡 ID,因为它是一个 VSTO COM 插件,因此您无法像使用 .xlam 文件那样访问 XML。答案很简单,但您需要 Office 2010 或更高版本。打开 Excel 并打开您感兴趣的插件,转到"file"菜单,然后转到“选项”。选择“自定义功能区”,然后在顶部窗口的右侧选择“自定义功能区:主选项卡”。现在取消选中您感兴趣的插件,然后点击底部的“导入/导出”以导出 XML 架构。在文本编辑器中打开此文件,您可以看到他们如何声明其选项卡 ID。
1) 我认为 getVisible 回调遇到的麻烦是,无论您如何标记 XML,如果有人在您之后加载了加载项,它都会覆盖您所做的任何操作。以下内容来自 Fluent Ribbon for Developers 常见问题解答 (http://msdn.microsoft.com/en-us/library/office/aa722523%28v=office.12%29.aspx#a16c7df5-93f3-4920-baa8-7b7290794c15_FAQ )
What happens when two add-ins try to repurpose the same built-in control? The last add-in that attempts to repurpose the control becomes the active add-in.
现在我没有比这更进一步,但如果您可以将此板架构导入/导出到 Office 中,那么如果您可以找到此 get 的导入位置,也许您可以使用 filescripting 对象在 VBA 中手动覆盖它。显然只有当它存储为文本时。机会有点远,但值得进一步研究吗?祝你好运!
关于excel - 隐藏 MS Office 功能区中的加载项选项卡(尤其是 PowerPivot 选项卡),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13720126/