众所周知,从微软的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界面中,选择"插入"菜单下的"模块",就产生了一个新模块,我们在新模块中输入以下代码:
'- ========================================================== '* 文件名 :TYSoftExcel_14and12_like11.bas '* 开发人员:袁培荣 '* 当前版本:1.0.2.2595 '* 创建时间:2012-02-25 '* 修改时间:2012-02-25 '* 功能说明:利用VBA在EXCLE2010和2007中找回2003式的经典菜单和工具栏 '* 版权说明:版权所有 袁培荣 YuanPeirong '* 编译环境:Windows 7(x64) SP1 简体中文专业版 '* VBA版本: 7.0.1590 '- ==========================================================*/ 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) 你会发现,经典菜单和工具栏回来了。
附我自己的效果图一张: