excel - 如何自动隐藏功能区,但仅适用于特定工作簿且仅适用于该工作簿中的一个工作表
问题描述
如何在工作簿打开时自动隐藏功能区但仅针对特定工作簿并且仅针对该工作簿中的一个工作表?
当我使用下面的代码按预期工作并隐藏功能区时,但是当我打开另一个 excel 文件时,文件中的功能区也被隐藏了。
Private Sub Workbook_Open()
Application.CommandBars.ExecuteMso "HideRibbon"
End Sub
解决方案
以独特的方式命名工作表,例如“aaa”,然后在ThisWorkbook
模块内写入以下内容:
Private Sub Workbook_Activate()
If ActiveSheet.Name = "aaa" Then
'Application.CommandBars.ExecuteMso "HideRibbon"
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)" 'code to hide ribbon.
Else
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",True)" 'code to show ribbon.
End If
End Sub
Private Sub Workbook_Deactivate()
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",True)" 'code to show ribbon.
End Sub
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
If Sh.Name = "aaa" Then
'Application.CommandBars.ExecuteMso "HideRibbon"
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",False)" 'code to hide ribbon.
Else
Application.ExecuteExcel4Macro "SHOW.TOOLBAR(""Ribbon"",True)" 'code to show ribbon.
End If
End Sub
在 Excel 2007 和 Excel 2010 中经过测试并且工作正常。
顺便说一句,Application.CommandBars.ExecuteMso "HideRibbon"
在 Excel 2007 和 Excel 2010 中测试过,会抛出错误,您使用的是哪个版本?
如果您愿意,请将上面的“隐藏/显示行”替换为根据评论在您的版本中工作的那些。
推荐阅读
- php - 在 Woocommerce 中获取订单商品名称
- spring - @Valid 不适用于 spring bean 类中的嵌套对象
- android - 如何从android中已安装应用程序列表中隐藏应用程序
- node.js - How to Segregate the dictionary key, value and Sum of it values using nodejs
- vb.net - Microsoft Visual Studio Community 2015 中的 VB 中的 MIDI
- facebook-graph-api - API 看不到新的 Facebook 页面
- java - 使用 Java 为字符串生成唯一 ID
- events - CQRS+ES:对聚合无关的命令/事件,但对投影很重要
- javascript - 如何在php while循环中的特定div中附加数据
- html - (ngx-openlayers) - 悬停在线串时显示工具提示