Excel Ribbon中的“自定义”选项卡无法激活

我正在尝试这个来激活一个自定义选项卡:

Globals.Ribbons.MyRibbon.RibbonUI.ActivateTab("TabAddin") 

它什么都不做。 没有错误,没有标签激活,什么都没有。

如果我更改标签名称到一个非现有的选项卡,它会引发exception,这是显而易见的。 这意味着ActivateTab方法正在做一些事情,但不是它打算做什么。

请帮忙吗? 这是Excel 2016的VSTO。

事实certificate,我是以编程方式打开本书,并立即调用打开方法,我试图激活自定义选项卡。 在那个阶段,选项卡还没有创build(也许Open方法是不同步的),这就是为什么选项卡没有被激活。

最后我用这个来打开这本书:

 var excelApp = Globals.ThisAddIn.Application; excelApp.WorkbookActivate += excelApp_WorkbookActivate; Excel.Workbook workbook = excelApp.Workbooks.Open(Filename: fileToOpen); 

而在源文件的其他部分,我有:

 void excelApp_WorkbookActivate(Excel.Workbook Wb) { Globals.ThisAddIn.Application.Wait(DateTime.Now.AddSeconds(1)); this.RibbonUI.ActivateTab("TabLeanAddin"); Globals.ThisAddIn.Application.WorkbookActivate -= excelApp_WorkbookActivate; } 

以上所有都导致加载项按预期工作。

干杯

海梅