智能进销存软件:革新现代库存管理
139
2023-11-07
【摘要】 本书摘自《Excel VBA跟卢子一起学 早做完 不加班 基础入门版》一书中第1章,第2节,韩小良著。
1.2.4 录制宏的弊端
无言:来看看录制的代码1-10中,只有标识为红色的才是有用的语句,其他很多语句看起 来对实际操作并没有实质的作用,那么这些语句是如何产生的,又该如何尽量少地产生这些语 句呢?
语句的产生——由录制宏生成。在录制过程中, Excel 会将我们的操作转换为计算软件承 认的语句。既然是其承认的,那么就会在操作中产生由软件默认的关于操作对象的关联属性及 逐步操作的代码语句(不管中间操作步骤是否多余或者操作失误,都会被如实记录下来)。 比如,对于选中的A1 单元格,只需要设置其字号,但是此时软件会将选中的对象转化为一个 Selection对象,并在选择字号时,将选择对象关联到了字体属性 Selection.Font, 接着换行写入 我们修改后的字号大小(红色字体)。那么到这里,按照我们的思维就可以停止,不需要继续 关联到其他任何属性了。
但是 Excel录制宏就认为需要将关联到这个字体对象的所有关联属性逐一列出,并写上默 认属性设置或者录制的操作情况。看到这么多的字符,不晕才怪呢。正是因为录制宏在步骤太 多的情况下会自动生成很多的无用语句,才导致阅读和分解起来不太方便。那么要如何产生尽 量少的语句,做到精简录制宏代码呢?
这个可以通过先设计好每一步操作,精确到每一步该做什么都先写在纸张上,并在录制的 时候尽量一气呵成,这样就可以做到产生尽量少的关联属性操作代码。例如要在D5 单元格中 输入AC 并设置黑体16字号,那么录制D5 的数据过程可以分别拆解成如图1-17和图1-18所 示的数据过程1和2,来看下这两个过程的代码差异。
1.2.5 宏的存放位置
无言:那录制完成的宏存放在哪里?
一开始录制宏的时候, Excel 就会提供给我们3个存放位置的选择:当前工作簿、新工作簿、个人宏工作簿,如图1-21所示。
存在这3个地方有什么区别和作用呢?
(1)当前工作簿:顾名思义,也就是将录制的宏保存在当前工作簿的模块中,录制的 宏只有在当前工作簿打开时才能使用。
(2)新工作簿:即录制时,Excel 会自行先创建一个默认名称的新工作簿后,在宏录 制完毕后将宏保存到该新创建的工作簿模块中,只有将新工作簿保存为 .xlsm 或 者 .xls才 能将宏保存,如果保存为 .xlsx 格式,将出现如图1-22所示的提示,这样我们保存在该工作簿的宏都将竹篮打水一场空—没了。所以保存时要注意选择保存为.xlsm 或 .xls格式。 当前工作簿也是一样的操作。
(3)个人宏工作簿:个人宏工作簿是 Excel默认的文件,在选择个人宏工作簿时,如果 隐藏的个人宏工作簿 (Personal. xlsb)不存在,Excel会创建一个,并将宏保存在此工作簿中。 每次启动 Excel 时 ,XLStart 文件夹中的工作簿都会自动打开。如果想在另一个工作簿中自动运 行个人宏工作簿中的宏,则还必须将该工作簿保存在XLStart 文件夹中,以便在启动 Excel 时同时 打开这两个工作簿。Personal.xlsb 的位置:
● 在Windows7 及以上系统中,此工作簿保存在
C:\Users\ 用户名\AppData\Local\Microsoft\Exce\XLStart 文件夹中。
●在Windows XP 中,此工作簿保存在C:Documents and Settingsl用户名\Application Data\Microsoft\Excel XLStart 文件夹中。
因此,如果不想每次都打开多个宏工作簿的话,需要将录制或编写的宏都放置在 Personal. xlsb文件中或将宏工作簿放置在XLStart 文件夹中。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们 18664393530@aliyun.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~