利用VBA在EXCLE2010和2007中找回2003式的经典菜单和工具栏
时 间:2017-08-06 09:32:40
作 者:缪炜 ID:24010 城市:江阴
摘 要:众所周知,从微软的Office 12(也就是我们所说的Office 2007)开始,软件界面采用了Ribbon界面,又叫做功能区。Office 14((也就是我们所说的Office 2010)同样采用此种界面。对我个人而言,我非常喜欢这种全新的界面,不喜欢Office11((也就是我们所说的Office 2003)的那种菜单工具栏界面。
但是,也有很多人用不惯这种新的界面,有人问我,有办法找回原来的那种界面吗。
正 文:
答案当然是肯定的。网上也有这种找回菜单栏和工具栏的软件,有一个叫Classic Menu for Office,还有一个叫Addintools.
但是,对我来说,我不敢用这种软件,因为不知道他们是怎么乱搞的,用着不放心。
所以,我利用自己强大的VBA知识(VBA是Office软件内置的一门编程语言,Office软件也是支持编程控制的,这一点很多人怕是不知道吧),自已编程创造出经典的菜单栏和工具栏。
1.首先,我们打开EXCLE 2010(或者2007),然后,按下Alt+F11快捷键就可以呼出EXCLE的VBA界面(有些人用的什么精简版,没有VBA,那你就呼不出来了)。
2.我们在呼出的VBA界面中,选择"插入"菜单下的"模块",就产生了一个新模块,我们在新模块中输入以下代码:
Sub auto_open()
ShowOldStyleMenus
End Sub
Private Sub ShowOldStyleMenus()
On Error Resume Next
Dim cBar As CommandBar
Dim cBarCtrl As CommandBarControl
Dim sMenuName As String
Dim sToolbarName As String
Dim iMenu As Integer
sMenuName = "Old Style Menu"
sToolbarName = "Old StyleToolbar"
CommandBars(sMenuName).Delete '如果之前有同名菜单栏,删除之
Set cBar = CommandBars.Add(sMenuName, , , True) '添加命令栏,名字为sMenuName,是一个临时菜单栏,即常用菜单项
'参考:Set newMbar = CommandBars.Add _(Name:="newMenubar", Position:=msoBarRight, _MenuBar:=True, temporary:=True)
With cBar
.Visible = True '临时菜单栏可见
For iMenu = 1 To 10
Set cBarCtrl = .Controls.Add(Type:=msoControlPopup, ID:=30001 + iMenu) '依次添加2003版的弹出是菜单
Next iMenu
Set cBarCtrl = .Controls.Add(Type:=msoControlPopup, ID:=30022) '图表菜单
Set cBarCtrl = .Controls.Add(Type:=msoControlPopup, ID:=30177) '自选图形
End With
CommandBars(sToolbarName).Delete '如果之前有同名工具栏,删除之
Set cBar = CommandBars.Add(sToolbarName, , , True) '设置变量
With cBar
.Visible = True
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=2520) 'New
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=23) 'Open
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=3) 'Save
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=4) 'Print
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=109) 'Print Preview
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=2) 'Spelling
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=21) 'Cut
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=19) 'Copy
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=22) 'Paste
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=108) 'Format Painter
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=210) 'Sort Ascending
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=211) 'Sort Descending
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=984) 'Help
Set cBarCtrl = .Controls.Add(Type:=msoControlComboBox, ID:=1728) 'Font
Set cBarCtrl = .Controls.Add(Type:=msoControlComboBox, ID:=1731) 'Font Size
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=113) 'Bold
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=114) 'Italic
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=115) 'Underline
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=120) 'Align Left
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=122) 'Center
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=121) 'Align Right
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=402) 'Merge and Center
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=395) 'Accounting Number Format
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=396) 'Percent Style
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=397) 'Comma Style
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=398) 'Increase Decimal
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=399) 'Decrease Decimal
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=3162) 'Decrease Indent
Set cBarCtrl = .Controls.Add(Type:=msoControlButton, ID:=3161) 'Increase Indent
End With '依次设置常用的命令
Set cBar = Nothing '清除变量
Set cBarCtrl = Nothing
On Error GoTo 0
End Sub
3.然后,我们在VBA界面中点击保存,再关闭VBA界面,就回到了EXCLE界面。
4.我们将这个EXCLE文件另存为 经典菜单和工具栏.xlsm (一定要存成xlsm,xls或xlsx格式都是不行的),然后关闭EXCLE软件。
5.我们将得到的 经典菜单和工具栏.xlsm 这个文件放到EXCLE的启动目录里去,具体目录为:
2007版: C:\Program Files\Microsoft Office\Office12\XLSTART
2010版: C:\Program Files\Microsoft Office\Office14\XLSTART
当然,前面的C:\Program Files\Microsoft Office要视你具体的Office安装目录而定。
6.好了,再次打开EXCLE 2010(或者2007) 你会发现,经典菜单和工具栏回来了。
附我自己的效果图一张:
Access软件网官方交流QQ群 (群号:54525238) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- 用Access连续窗体制作的树...(11.03)
- 【Access高效办公】上一年...(10.30)
- Access制作的RGB转CM...(09.22)
- Access制作的RGB调色板...(09.15)
- Access制作的快速车牌输入...(09.13)
- 【Access高效办公】统计当...(06.30)
- 【Access高效办公】用复选...(06.24)
- 根据变化的日期来自动编号的示例...(06.20)
- 【Access高效办公】按日期...(06.12)
学习心得
最新文章
- SqlServer默认当前时间用什...(11.28)
- 【Access日期时间区间段查询示...(11.19)
- Microsoft Access不...(11.07)
- 用Access连续窗体制作的树菜单...(11.03)
- 【Access高效办公】上一年度累...(10.30)
- Access做的一个《中华经典论语...(10.25)
- Access快速开发平台--加载事...(10.20)
- 【Access有效性规则示例】两种...(10.10)
- EXCEL表格扫描枪数据录入智能处...(10.09)
- Access快速开发平台--多行文...(09.28)


.gif)
