如何利用VBA隐藏Excel2003菜单栏和工具栏
发布时间:2023-06-01 09:06:28
在Excel 2003中,有时需要限制用户的操作,例如当用户打开某个指定的工作簿时,Excel 2003菜单栏和工具栏被隐藏起来。而当关闭该工作簿重新打开其他工作簿后,菜单栏和工具栏又恢复正常。用VBA代码可以实现这个目的,步骤如下:
1.打开需要屏蔽菜单栏和工具栏的工作簿,按Alt+F11,打开VBA编辑器。
2.在“工程”窗口中选择“ThisWorkBook”,在右侧的代码窗口中输入下面的代码:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
showhide (bHide = True)
End Sub
Private Sub Workbook_Open()
showhide (bHide = False)
End Sub
Sub showhide(Optional bHide As Boolean)
Dim cmb As CommandBar
Static col As New Collection
If bHide Then
For Each cmb In Application.CommandBars
If cmb.Type = msoBarTypeMenuBar Or cmb.Type = msoBarTypeNormal Then
If cmb.Visible Then
cmb.Enabled = False
If cmb.Visible Then cmb.Visible = False
col.Add cmb, cmb.Name
End If
End If
Next cmb
Else
If col Is Nothing Or col.Count = 0 Then
For Each cmb In Application.CommandBars
If cmb.Type = msoBarTypeMenuBar Or cmb.Type = msoBarTypeNormal Then
If Not cmb.Visible Or Not cmb.Enabled Then
cmb.Enabled = True
If (Not cmb.Visible) And cmb.Enabled Then cmb.Visible = True
End If
End If
Next cmb
Else
For Each cmb In col
If Not cmb.Visible Or Not cmb.Enabled Then
cmb.Enabled = True
If (Not cmb.Visible) And cmb.Enabled Then cmb.Visible = True
End If
Next cmb
End If
Set col = Nothing
End If
End Sub
3.在退出该工作簿前,先要让菜单栏和工具栏隐藏起来,方法是:鼠标在代码
Private Sub Workbook_Open()
showhide (bHide = False)
End Sub
中间单击一下,让光标停留在这段代码中间,然后按F5键运行该段代码,这时Excel中的菜单栏和工具栏都将被隐藏。
说明:这一步十分重要,不能省略,如果保存工作簿后不运行该段代码而直接退出,下次打开Excel时,Excel中的所有工具栏都将会显示在界面中。万一出现这种情况,可以用下面的方法让Exce恢复默认的工具栏设置。在Windows XP中,删除“C:Documents and Settings用户名Application DataMicrosoftExcel”文件夹中的“Excel11.xlb”文件,而在Windows Vista中,该文件在“C:用户用户名AppDataRoamingMicrosoftExcel”文件夹中。“Excel11.xlb”文件中保存了Excel 2003自定义菜单栏和工具栏设置,删除该文件后Excel将自动恢复默认的菜单栏和工具栏。
这样,当我们打开该工作簿时,菜单栏和工具栏将被隐藏,从而可以限制用户的操作。而退出Excel 2003重新打开别的工作簿后,Excel 2003菜单栏和工具栏会照常显示。


猜你喜欢
- 任何的操作系统、软件、游戏,只有熟练使用快捷键,才能最大效率的工作、娱乐,我们不能把所有的时间都浪费在一台机器上,这是不行的。快捷键带给我们
- 在微软不厌其烦的提醒下,相信大家都已经知道,Windows XP的支持将于2014年4月8日结束在微软不厌其烦的提醒下,相信大家都已经知道,
- 有些用户想要加入windows11预览体验计划,但是不知道如何操作才能加入,首先我们打开windows11的设置选项,搜索预览体验计划,搜索
- 我们知道移动硬盘是以硬盘为存储介质,计算机之间交换大容量数据,方便携带的存储产品。是否遇到过将移动硬盘接入电脑但无法读取的情况?那么是什么原
- 在平时的工作中,我们偶尔会删除一些文件,但是发现系统提示没有权限,于是这时候我们就必须获取administrator权限了,但是很多用户不知
- 有网友反应Win11安装完要账号密码这是怎么回事?本文就为大家带来了Win11装完系统要用户密码登录解决方法,需要的朋友一起看看吧 
- APMServ-Apache启动失败怎么办?在本地计算机启动Apache的时候,经常会遇到Apache启动失败的提示,怎么办呢?为什么会出现
- 在我们使用win10操作系统的时候会发现,C盘的windows文件夹内存占用空间特别大,那么应该如何删除或者清理这个windows文件夹内的
- Win11怎么关闭休眠?有部分用户不喜欢电脑休眠模式,想要将其关闭,但是不太清楚应该如何操作,其实方法很简单,下面小编就为大家介绍Win11
- 0x00000006无法连接共享打印机 0x00000006无法连接打印机的解决方法,我们的电脑再使用打印机的时候,总是会提示我们0x000
- Win10自动更新老是弹出来怎么解决?许多朋友会遇到这种情况,正在使用电脑的时候突然弹出自动下载更新的提示,网速都被占用了,很烦人,解决这个
- macOSCatalina 带来众多让用户爱不释手的新体验。你可以领略音乐、播客这两款全新 Mac app 的表演;在 Mac 上畅享各款自
- 怎么禁止win7旗舰版显示用户登录信息?当用户登录系统桌面的时候,可以查看上次的具体登录情况,包括时间及使用账号,个人很不喜欢这种感觉,该怎
- Windows系统自带的IE浏览器很少有人会去使用,它运行起来比其它的浏览器要慢,而且经常出现各种各样的问题。最近,有Win7系统的用户,在
- 微软正式推出21H1版本后,应该有很多人已经将自己的电脑系统升级到21H1版本了吧,但是有用户跟小编反应说自己更新的时候进度一直卡在20%,
- 当我们录入数字字母,比如身份证时候,出现乱码怎么回事呢?原因和中文乱码一样吗?该怎么解决?相信很多用户遇到这样的问题,不过别着急,下面和小编
- 微信出现零钱无法转账怎么办?现在用微信的人越来越多,有时候我们在用微信转账的时候会出现无法转账的情况,该怎么解决这个问题呢,下面就给大家分享
- 我们在使用浏览器打开网页的时候,经常会遇到浏览器打不开网页的问题,那么当遇到的时候,我们就要想解决的方法了,下面小编就来给你们说说Win7系
- 有Win8用户发现任务管理器里面有个Msiexec.exe进程,Msiexec.exe是什么进程?以前都没有见过,会是病毒吗?为帮助大家解决
- Win11笔记本外接显示器的方法分享。我们的电脑Windows系统可以支持屏幕的扩展,为用户的办公使用带来更多的方便。不只是台式显示器,其实