笔者从事财务和文字编辑工作十多年来,使用最多、最感兴趣的办公软件当属Office Excel了。从最初接触Excel97-2003,到现在使用Excel2007,感觉到这款办公软件的技术越来越先进、功能越来越强大、操作越来越简便。尽管如此,实际工作中还是有很多个性化的需求和问题难以在软件中找到有效的解决方法或方案。虽然Excel提供了 VBA二次开发功能,让使用者可以通过学习和掌握VBA知识,来编写适合自己需求的应用程序或代码,但是,对于我们这些实际工作者来说,由于没有稳定的学习时间,即使想学VBA,一时半截也难以入门,更不用说掌握应用了,所以工作中遇到的一些问题还得用土办法、笨办法去解决。前不久,偶然读到《EXCEL VBA范例大全》(与Excel 2002/2003版本兼容,电子工业出版社出版)一书。据其前言介绍:“本书适合广大EXCEL VBA初、中级读者及VBA程序员使用,也可作为大中专院校相关专业学生,以及社会相关培训班学员的理想教材”。但我感到该书也能让我们这些稍懂一点VBA基础知识的人,就能运用VBA。目前,我已运用该书附带的实例代码解决了工作中的几个问题。所以,这里着重从一个实际工作者和应用者角度,谈谈对该书的几点认识和体会,或许对广大同仁有所启示和帮助。 体会一:涵盖面广,突出实用。本书精选的350个Excel 2007 VBA设计实例,包括了几乎所有的Excel 2007 VBA知识点,覆盖各行业涉及到的Excel应用技术,典型实用、覆盖面广。例如,对保存在各类盘中的历史资料,为了便于以后查询和调用,过去我是用Excel的“超链接”工具一个一个文件地建立文件目录,假如一个文件夹中有400多个文件,这样下来大约需要半天时间,很是枯燥费时。由于本书实行盘书结合,将光盘中附带的“实例250 列举指定文件夹下的所有Excel文件”程序源代码复制到代码窗口,并将其中的一个字符稍作变动后加以运行,即可列出指定文件夹下所有的文件目录。过去需要半天时间完成的工作量,运用这个代码程序后在2至3分钟内即可完成,效率提高程度,由此而知。 体会二:“断章取义”,拿来即用。该书与其他VBA书的不同之处在于,我们不需要从头至尾地去阅读该书的每个章节或每一页(当然,若想成为VBA高手,那就另当别论了),对于我们这些实用主义者来说,在工作中遇到需要解决的应急问题时,只需对照350个实例目录,查找到与自己需求相类似的实例后,将代码复制过来即可用,即便自己的表格格式或数据增删有变化,也不需要过多地修改代码中所涉及的区域引用。例如,若要在车间产量工作簿中每日建立一个工作表,每月月初新建立当月工作表,当月多少天,则需建立多少个工作表,对这一费时费力的事情,只需将“实例177批量新建工作表”代码复制过来,两三秒钟即可完成任务。再如我们在工作中常常会遇到需要建立一个同格式多表格(多名称)的工作簿,以便进行汇总,过去基本做法是在样表的后面插入需要的工作表数量,然后将样表格式逐个复制到各分表,再对汇总表及各分表进行重命名,如果分表数量较少的话,倒还好说,如果有十多个或数十个分表,这样做就相当烦琐了。现在将实例177拿来稍作改动后,即可在样表中批量完成各分表的复制和重命名工作,速度的提高是不可同日而语的。据该书作者介绍,其撰写本书的初衷和目标,也就是“让用户复制代码即可用”。 体会三:学教结合,易懂易用。该书对各实例代码的处理方法有三个特点:1.每句代码都有注释,让读者可以轻松看懂代码;2.对每个实例都有对应的语法解释,使读者可以举一反三;3.为了程序的通用性,代码大多采用动态地址引用,让程序的适用面更广。而我觉得该书一个最大的特色,在于她提供有超值的售后服务,即读者可以通过作者的QQ群与其随时交流VBA问题、索取插件源程序、请教学习中的各种疑问,甚至可以参与作者的VBA在线教学。笔者断断续续听了作者的几堂在线教学后,曾试着修改几个实例代码,以达到自己需要的目的,在运行成功后,心中那份喜悦是难以形容的。由此我也体会到,只要找到合适的书籍和学习方法,EXCEL VBA并不是那么深不可测,深不可学,VBA殿堂的大门也不再是那么令人望而生畏、望而却步。 |