- 阿啵呲嘚
-
加载宏又被称为扩展宏,是通过增加自定义命令和专用功能来扩展 Microsoft 系列办公软件功能的补充程序,满足用户自身需求,或作为商品向公众发售,它是Microsoft Office 办公软件的一项重要功能,属于办公件自身功能之一,不需要另行安装软件。在 Word、Excel、PowerPoint、Access、Outlook、InfoPath、Publisher 七件套中,除InfoPath都能自定义加载宏,可从 Microsoft Office 网站或第三方供应商获得加载宏,也可使用 Visual Basic for Applications 编写自己的自定义加载宏程序,用户制作的宏文件可以像Office制作的普通文档一样进行保存、打开、复制、与他人分享等。加载宏对于专业从事办公软件操作的人员非常重要,熟练掌握加载宏,可以让操作人员从繁重的数据处理工作中解脱出来,加载宏的运用可以极大的提高工作效率和质量。
一、加载宏的分类
1、按扩展名分类:加载宏文件可以是软件自带的,即自带加载宏,例如Excel中的查询向导,分析工具库等。与自带加载宏对应的则是自定义加载宏,即用户自已利用办公软件或其他工具软件编辑的宏。自定义加载宏泛指一类宏,由制作软件的不同带有不同的扩展名,例如Excel的宏文件2003版以前的后缀为.xla,2007版后的后缀为.xlam,Word的宏文件后缀为.docm,PowerPoint的为.ppa等。
2、按编辑位置不同的分类:Office办公软件中,编辑宏使用的软件简称VBA(Visual Basic for Applications,快捷键ALT+F11,可以通过快捷键直接由办公软件界面切换到编程界面)。按编辑位置来说,以Excel可供编写程序的位置种类最齐全,Excel可以在表页(sheet)上添加宏,也可以在工作薄(Workbook)上添加宏。这两个地方的宏都是随事件起动宏,且称为事件宏。
二、加载方式
用Office办公软件上的VBA设置的加载宏与普通文件很相似,不同之处就是多了一个加载过程。有宏没加载的文件叫带宏文件,不是加载宏。加载方式大同小异,除InfoPath外,都有大致相同的步骤:先编制命令加载过程,再添加子程序,设置工程属性,将页保存为宏文件,在软件中调用。完成了以上五步,以后在打开软件时,宏就自动随软件一起启动了。
1、编制命令加载过程
加载过程是将命令添加到菜单,工具栏或快捷菜单的程序。加载可以是往菜单中添加,也可以往工具栏或快捷菜单中添加,添加的可以是已有的菜单也可以是新建的自定义菜单。添加内容包括命令名称,命令代表的功能宏,命令提示,命令图标,菜单分隔线,命令快捷键。添加加载过程的程序编辑位置,通用方式是将菜单加载放入能自动运行的子程序Sub auto_open()中,这也是许多病毒的起动方式。对Excel和Word又多了一个选择,可以放在事件中。Excel可以在ThisWorkbook 的Private Sub Workbook_Open()事件中添加加载。在Private SubWorkbook_BeforeClose(Cancel As Boolean)事件中添加卸载。Word可以在ThisDocument的Private Sub Document_Open()中添加加载。在Private Sub Document_Close()中添加卸载。加载过程除单菜命令外,还包括环境判断,条件限制,装载提示,容错处理,联机帮助等。联机帮助需要用专门的软件先制作chm或hlp文件,在加载过程序中设置关联即可使用。加载宏有了加载过程就可以与软件自带的菜单不仅使用一样,看上去也一样。初初一看还以为是Office自带的菜单。宏用起来是否方便,加载过程很重要。
2007版前的Office需要自已设置各种菜单命令,2007版开始可以通过“Excel 自定义.exportedUI”文件来添加命令到工作区。为了兼容各不同的版本,加上版本自动选择语句就行了。
2、添加子程序
子程序有Private Sub和Public Sub两种类型,一般需要给其他程序调用的都设置成Public Sub,Private Sub不能被其他子程序调用,只能被命令支配。在菜单中命令对应的就是实现各种作用功能的子程序。接下来就是编辑子程序,最简单的编辑子程序就是打开录制宏,然后在办公软件上操作。录制的宏就是一个子程序。为了方便使用,子程序除了分模快,还要分菜单。将对Excel本身功能扩展的子程序,集合成通用菜单,放在工具栏或快捷菜单中。通用菜单,是对所有Excel表都可以使用的。将只用于特定工作的子程序,集合成专用菜单,放在菜单栏中。专用菜单,最能体现宏的强大,高效。但它只能对放在指定位置的特定的表进行操作,有时只能用在某台电脑上或者只有特定的登录用户才能使用。区分通用与专用的意义就显示出来了。要用专用宏就要看说明书,或向宏设计人学习用法,了解文件存放路径等。专用宏除了分模块,分菜单,甚至还要分文件。加载宏,就是一个文件,是要占内存的,若要节省内存并加快 Excel的运行速度,卸载不常用的加载宏就很重要,分文件的意义就在这里。在编辑子程序时要注意称谓的变化。
3、工程设置
工程中要设置的内容具体如下:
(1)加载属性设置包括:设置工作表,工作簿属性,VBAProject的属性。Office各软件之间会有些不同。例如Excel需要设置带宏的表不可见,否则可见到表,PowerPoint保存成宏就不可见,Word则设置了密码,不仅表不可见连工程都不可见。这些特点是编程人员需要注意的。
(2)设置工程密码,对Excel很方便下次想改程序,双击就会提示密码输入 ,就可以修改。同样的做法Word会显示工程不可见,因此想下次修改程序,就不能设置。如果想保密让Excel工程不可见,可以用二进制编辑器对加载宏文件进行修改,让工程不可见
(3)引用是扩展插件的,如2003excel的spreadsheet是11.0版的,不能切换显示三个sheet表,而12.0版可以,如需要这个功能就在引用中调整。
(4)数字签名:就是添加数字证书
4、保存为专门的宏文件
加载宏实现了宏与数据的分离,将只能用于某个表的宏,变成了对所有表格都可以使用的宏。身份也由带宏文件变成了加载宏。在Microsoft 系列办公软件中加载宏文件与普通文件比较只是多了VBA编辑的宏,但文件后缀是不同的。如Excel的宏文件后缀为.xla,Word的宏文件后缀为.docm,PowerPoint的为.ppa等。在资源管理器中,可以看到这类文件的图标右上角会有个红立方。在编好宏后将它放在自已指定的文件夹,注意在使用别人的宏时,系统会建议存放位置,但最好放在自已指定的位置,理由有三条:一系统文件夹不好找,二防止系统重装丢失宏文件,三方便修改文件。Visual Basic for Applications 有菜单上有“保存”命令,用来保存编制的宏文件。
5、在软件中调用宏
保存的宏就可以调用了,不过Office 办公软件七套件之间都有些许差异。例如:2003版Excel进入菜单/工具/加载宏/浏览,点击浏览,找到宏存放位置,点宏文件,确定,菜单就显示出来,下次打开EXCLE时,宏菜单会自动加载。要去掉宏菜单,进入Excel进入菜单/工具/加载宏,去掉列表中的钩就可以了。如果加载宏设置了卸载,菜单马上就会消失。如果没有设置,菜单仍然显示,但不能用,关闭软件再打开菜单就消失。下次想用,打上钩就又出现了。2003版PowerPoint要先进入注册表注册DebugAddins,再调用。具体操作如下:点击/开始/运行,输入regedit,确定;进入HKEY_CURRENT_USERSoftwareMicrosoftOffice11.0PowerPointOptions,11.0是ppt2003的版本号,PPT2010的版本值是14.0;选中Options,右击:新建DWORD值,命名为“DebugAddins”,双击新建的DebugAddins,出现编辑双字节值(DWORD)的窗口,设置数值数据为1,关闭注册表。注意,以上操作都是在ppt关闭时进行;打开PowerPoint,进入VBA窗口工程资源管理器,就可以看到编辑界面了,剩下的就是编代码了;宏编好后,设置属性,添加数字签名(不添加打不开),将文件保存为ppa,然后进加载项添加。(ppt的加载宏无法修改保存,每次修改都要再起个名字保存,如果不想弄乱名字,就需要关掉ppt后,再删除原宏,将新保存的宏改名再调用。最佳的方法是挂个专用宏,专用宏将修改的过程导入,然后新开一个ppt文件,导入过程,去掉加载,新ppt覆盖原宏,重新加载。)2003版PowerPoint加载过程,只能用Sub auto_open(),去掉宏菜单需要去掉加载,重新打开PowerPoint。2003版Word以模板的形式存在,将加载宏设置成共用模板及加载项即可。
6、证书问题
数字证书有两种,一种是用Office自带工具制作的证书,一种找专业网站买的证书。无论哪种证书安装之后,就可以在宏安全性“高”的情况下也能打开加载宏,没有证书就只能选择“低”。用别人编的加载宏有个安装证书的问题。在遇到有证书的宏时电脑会提示安装,标题叫“安全警告”,点击:详细信息/查看证书/安装证书/是/确定,注意在“安全警告”中把“总是相信....”的小框钩上。证书每个人都可以制作,进入Office工具,打开“VBA项目的数字证书”,填个名字就行了。证书也是一个文件可以从系统中导出,扩展名为.cer。安装证书很简单:进入VBA,点击菜单/工具/数字签名/选择(在这里就可以看到“hhch”证书)/确定/确定。其实不带宏的普通办公文件,建议也添加数字签名,可以防止病毒感染。
7、版本与兼容性问题
版本问题是加载宏共享要注意的首要问题。例如:同样是2003版的Excel在模块中加入了窗体,窗体采用了spreedsheet电子表。当在其他电脑上加载时就出现了无法装载对象的提示,这都需要考虑兼容性。Office 97-2003同一软件的加载宏,都基本相似。Excel 2007之后就有了变化。如果将功能区看成是加载命令的又一种新方式,则一切都变得很简单。
Excel 2007之后,加载项是作为可选项由用户自已决定是否添加,要使用加载宏必须先进入自定义功能区的主选项卡中加上加载项和开发工具。具体操作2007和2010等各版本稍有不同。并对执行外部命令作了一些限制,语法要求更严格一点,但大多数加载宏子程序不用修改就可以使用。此外加载宏是独立的工能区“加载宏”主选项卡,且以前版本的菜单仍然以菜单的形式显式,显得与功能区其他命令格格不入。工具栏则以组的形式显示在“自定义工具栏”,当打开其他选项卡后则看不到了。完全失去了老版本中随时可见的便捷性。
2007之后,加载过程可以用自定义功能区的方式加载。方法有两种:在不考虑与07以前的版本兼容的情况下,07之后的版本,是不会编辑加载过程的菜鸟的福音。进入EXCEL选项卡/从下列位置择命令/点击下拉菜单,选择宏,在VBA工程未锁定的情况下,有宏子程序存在,下面的大框中就会出现命令的名字。点击新建选项,再新建选项组,选中宏子程序名,选择添加(A)>>。一个自已的宏就添加到功能区了。在考虑与老版本兼容的加载方式的情况下,如果一个加载宏需要既用于07版之前,又用于07版之后,直接在加载过程中添加如下语句“If Application.Version = 14# Then End”(14#是2010的版本值),则新版本就会自动去掉加载过程。有了这个语句就不用看到难看的老版本菜单了,接下来就是动手建立自定义功能区来代替原菜单了。这里有一个小技巧,2003版之前的自定义工具栏是随时可见的,到了07之后的版本被放在加载宏主选项卡,当选择其他选项卡时就看不到了,失去了便利性。07之后的版本有快速访问工具栏,可以将以前放入自定义工具栏的命令放到这里,然后设置成“在功能区下方显示快速访问工具栏”,便利性就又回来了。自定义的功能区可以导入导出。导出文件名:Excel 自定义.exportedUI当其他电脑也是07以上版本时只需要导入这个文件就可以了,不必再新建自定义功能区。最后再自定义工作区中的菜单会根据菜单自动调整排列方式和图标大小。
8、加载宏的卸载问题
若要节省内存并加快 Office的运行速度,卸载不常用的加载宏是一个好办法。卸载加载宏之后,其功能和命令都将从 Office 中删除,但加载宏文件本身仍保留在计算机上以待重新加载。组件对象模型(COM)加载项,它在多种编程语言(包括 Visual Basic 、Visual C++ 和 Visual J++)中提供了附加功能。作为开发者,您可以在 Microsoft Visual Basic 帮助中查找有关设计 COM 加载宏的信息。开发和测试时,可以在使用加载宏的安装程序之前在 Office 中加载或卸载 COM加载项。加载宏文件一般并不大,以Excel2010为例子空白表也就8KB,附加在表上的宏程序是以无格式文本存在,因此500KB的加载宏几乎可以完成一个财务人员的所有需求。对于1GB以上内存的电脑没有丝毫负担。并且对打开Office也没有什么明显影响。
- 可乐
-
加载宏就是IE,Excel,PPT或者Word及其他的微软产品,在家的应用程序。此程序就是宏。加载后,可以实现其他原本在软件无法实现的功能。
- 黑桃云
-
加载宏是通过增加自定义命令和专用功能来扩展 Microsoft PowerPoint 功能的补充程序。可从 Microsoft Office 网站或第三方供应商获得加载宏,也可使用 Visual Basic for Applications 编写自己的自定义加载宏程序。
- 再也不做稀饭了
-
加载宏是通过增加自定义命令和专用功能来扩展 Microsoft 系列办公软件功能的补充程序,可扩软件包括常用的Word、Excel、PowerPoint、Outlook等 。可从 Microsoft Office 网站或第三方供应商获得加载宏,也可使用 Visual Basic for Applications 编写自己的自定义加载宏程序。
加载宏又被称为扩展宏,主要就是扩展原软件的功能,满足用户自身需求,或作为商品向公众发售。
加载宏是Microsoft Office 办公软件的一项重要功能,属于办公件自身功能之一,不需要另行安装软件。用户制作的宏文件可以象Office制作的普通文档一样进行保存,打开,复制,与他人分享。
加载宏对于专业从事办公软件操作的人员非常重要,熟练掌握加载宏,可以让操作人员从繁重的数据处理工作中解脱出来。加载宏的运用可以极大的提高工作效率和质量。
- 皮皮
-
加载宏是通过增加自定义命令和专用功能来扩展 Microsoft PowerPoint 功能的补充程序。可从 Microsoft Office 网站或第三方供应商获得加载宏,也可使用 Visual Basic for Applications 编写自己的自定义加载宏程序。