Prz*_*min 10 excel vba excel-vba
如何Auto-hide Ribbon在Excel 2013中的VBA?我想通过点击下面图片中标有蓝色的Excel菜单右上角的上箭头图标,然后点击标有橙色的第一个选项,来获得我所得到的结果:
我也有兴趣将VBA切换回第三种选择Show Tabs and Commands.对我来说重要的是在Excel菜单中保留上箭头图标(标有蓝色).
我尝试过这个帖子中显示的提示:VBA最小化Excel中的功能区 但我对结果不满意.
尝试1
Application.ExecuteExcel4Macro "Show.ToolBar(""Ribbon"",False)
Run Code Online (Sandbox Code Playgroud)
这很好,但隐藏了蓝色图标.
尝试2
CommandBars.ExecuteMso "MinimizeRibbon"
Run Code Online (Sandbox Code Playgroud)
这接近我想要的.这会保留蓝色图标,但不会隐藏整个菜单.它切换到图片中显示的第二个选项Show Tabs.
尝试3
SendKeys "^{F1}"
Run Code Online (Sandbox Code Playgroud)
豁免根本不起作用.此外,它应该模仿尝试2.所以即便这样也不会让我满意.
Tye*_*ler 11
我看不出有其他人提起过这个...这不是一个解决方法,这是我认为你正在寻找的实际idMSO.这段代码使得我的excel窗口看起来像第一个选项所做的一样Auto-Hide Ribbon.
在代码运行之前,我的窗口看起来像这样,在"恢复"大小:
运行以下代码:
Sub HideTheRibbon()
CommandBars.ExecuteMso "HideRibbon"
End Sub
Run Code Online (Sandbox Code Playgroud)
在最大化的窗口大小中会使您的窗口看起来像这样(就像您Auto-Hide Ribbon手动按下按钮时会发生的那样):
如果要在工作簿打开时自动隐藏功能区,请将其放在工作簿代码中:
Sub Workbook_Open()
CommandBars.ExecuteMso "HideRibbon"
End Sub
Run Code Online (Sandbox Code Playgroud)
或者,为了实现相同的目的,您可以将此代码放在一个模块中:
Sub Auto_Open()
CommandBars.ExecuteMso "HideRibbon"
End Sub
Run Code Online (Sandbox Code Playgroud)
如果您希望窗口恢复正常,则再次运行完全相同的代码.换句话说,当跑,因为idMSO"HideRibbon"是一个切换按钮下面的代码会使完全没有视觉变化:
Sub HideTheRibbon()
CommandBars.ExecuteMso "HideRibbon"
CommandBars.ExecuteMso "HideRibbon"
End Sub
Run Code Online (Sandbox Code Playgroud)
如果你想在Excel的所有idMSO的完整列表,单击适用于您的情况如下:Excel的2013+,Excel 2010中,Excel 2007中
可能您应该做一些更复杂的事情:
使用CommandBars.ExecuteMso "MinimizeRibbon"显示/隐藏功能区。根据您的需要,您可以显示/隐藏功能区中的所有其他选项卡。例如,在此处使用某些代码-> Excel隐藏/显示功能区上的所有选项卡(自定义选项卡除外)
因此,需要2个步骤:
第1步-使用CommandBars.ExecuteMso显示或隐藏
第2步-使用链接中的一些宏显示或隐藏其余选项卡。
一个大的解决方法,但是您会得到想要的。
小智 5
我将此用于演示目的
ActiveWindow.DisplayGridlines =假
ActiveWindow.DisplayHeadings = False
Application.DisplayFormulaBar =假
Application.DisplayFullScreen = True这是我用来隐藏功能区的东西