在Excel 2007中,我们可以右键单击功能区并选择“最小化功能区”&将其最小化。Excel 2007以编程方式最小化功能区但不是菜单栏
我已经试过
Application.ExecuteExcel4Macro("show.toolbar(\"ribbon\",false)");
其中隐藏了整个ribbonbut我不想隐瞒整个色带。
我甚至试过
Application.SendKeys("^{F1}", true);
但有时不能正常工作是不可靠的。
有没有办法使用C#VSTO代码做呢?
我读了很多关于toggleribbon()
函数,但无法找到使用它的方法。
编辑: 有办法可以实际找到如果功能区已经最小化。我用
Office.CommandBars cbs = null;
cbs = Application.CommandBars;
foreach (Office.CommandBar cb in cbs)
{
if (cb.Name == "Ribbon")
{
if (cb.Height > 90)
{
this.Application.ActiveWindow.Activate();
//to get focus on current workbook so that sendkeys will work
Application.SendKeys("^{F1}", true);
}
}
}
+1伟大的问题,如果它的任何帮助MS Access中的等效物是'DoCmd.ShowToolbar“功能区,”acToolbarNo“ – JMK