VBA在Excel 2013中自动隐藏功能区

Przemyslaw Remin

如何Auto-hide Ribbon在VBA中的Excel 2013中?我想通过单击下图中标有蓝色的Excel菜单右上角的上箭头图标,然后单击标有橙色的第一个选项,来实现我所得到的确切结果:

在此处输入图片说明

我也对VBA切换回第三个选项感兴趣Show Tabs and Commands对我来说重要的是将Excel菜单中的上方箭头图标(标有蓝色)保留下来。

我尝试了此线程中显示的提示:VBA最小化Excel中的功能区,但我对结果不满意。

尝试1

Application.ExecuteExcel4Macro "Show.ToolBar(""Ribbon"",False)

很好,但隐藏了蓝色图标。

尝试2

CommandBars.ExecuteMso "MinimizeRibbon"

这接近我想要的。这将保留蓝色图标,但不会隐藏整个菜单。它将切换到图片中显示的第二个选项Show Tabs

尝试3

SendKeys "^{F1}"

附件根本不起作用。此外,它应该模仿尝试2。因此,即使那样也不能令我满意。

泰勒

我看不到其他人提出了这个建议……这不是解决方法,这是我想寻找的真正的idMSO。这段代码使我的excel窗口看起来像第一个选项所做的一样都消失了Auto-Hide Ribbon

在代码运行之前,我的窗口如下所示,大小为“恢复”:

在此处输入图片说明

运行以下代码:

Sub HideTheRibbon()
    CommandBars.ExecuteMso "HideRibbon"
End Sub

将以最大化的窗口大小使您的窗口看起来像这样(就像您Auto-Hide Ribbon手动按下按钮时会发生的情况一样):

在此处输入图片说明

如果要在工作簿打开时自动隐藏功能区,请将其放入工作簿代码中:

Sub Workbook_Open()
    CommandBars.ExecuteMso "HideRibbon"
End Sub

另外,要实现同一目的,可以将以下代码放在模块中:

Sub Auto_Open()
    CommandBars.ExecuteMso "HideRibbon"
End Sub

如果希望窗口恢复为正常状态,请再次运行完全相同的代码。换句话说,由于idMSO“ HideRibbon”是一个toggleButton,因此以下代码在运行时完全不会发生视觉变化:

Sub HideTheRibbon()
    CommandBars.ExecuteMso "HideRibbon"
    CommandBars.ExecuteMso "HideRibbon"
End Sub

如果要获取excel中所有idMSO的完整列表,请单击以下适用于您的内容:Excel 2013 +Excel 2010Excel 2007

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章