学习Word的要点5: 域代码、宏、VBA脚本


(yanlb2000, 2006.11.11, yanlb2000.blogcn.com)


五、域代码、宏、VBA脚本


我觉得,以下内容,对于多数Word使用者来说,是没有必要一定掌握的。不掌握这些,照样可以将Word使用得很好,完成各种工作。当然,如果能了解些这方面的概念,那是更好了。
而,如果你想更多地掌握Word的高级功能,那么可以参考一下下面的介绍了。


编写一个Word文档的时候,我们可以不仅仅是简单地输入一些文字、表格、图片,做些排版等等的操作。Word还提供了很多更高级的方式,让我们处理文档内容的过程更灵活,功能更强大。比如,Word的域代码、宏、和VBA脚本等功能。


1, 域代码


域相当于文档中可能发生变化的数据或邮件合并文档中套用信函、标签中的占位符。这个可能变化的数据,概念就很广了,可以是等式和公式、日期和时间、索引和目录、文档的详细信息等等。这些信息,是可能随着时间变化、文档内容的变化、外界条件或数据的变化,而经常变化的,我们希望在文档中随时更新显示这些变化,就可以通过插入域代码来完成。


2, 宏


如果你在编写文档的时候,会经常重复性地执行一些相同或很类似的操作,那么,Word的宏命令功能,可以帮助你自动化地进行这些重复的操作。
简单地说,宏就是一系列Word指令的集合,可以帮助我们自动地执行这些操作。
要使用宏,就要经过录制宏,保存宏,使用宏,这些步骤。录制宏,相当于你先将这些需要重复执行的指令先做一遍,让Word记录下来,自动生成一个宏。如果有需要,可能还要适当地调试,以更符合自己的需求。然后保存。
使用宏的方式也很多样,可以将一个宏指定为一个菜单项,一个工具栏图标,或者指定一个快捷键等,方便调用。


3, VBA脚本


Word文档自动化的更高级方式,就是VBA编程了。通过编程,可以最大程度地发挥Word的功能,将很多重复任务简单化,将很多操作智能化、自动化。
上面所说的Word宏,其实也是一种VBA脚本。Word在录制宏的时候,本质上就是将那些操作转换成脚本指令保存下来了。以后就可以随时调用。但宏只是VBA脚本中简单的应用。VBA脚本的功能其实相当复杂和强大。甚至,有很多公司和个人,能据此开发出功能非常强大的Word插件,形成一个相对独立的软件产品。
然而,VBA脚本也是一项很有争议的技术。这就是赫赫有名的宏病毒了。VBA脚本虽然功能强大,但对绝大部分普通用户来说,并不是迫切需要的,而且学习起来也不简单,需要一定的编程基础,所以,对多数用户来说用处真的不大。但同时,正因为其功能强大,所以反而被黑客看中,编制出了大量宏病毒,造成了很大的破坏。很多人,现在听到宏病毒还是很害怕的。
所以,我曾经戏虐地说过,Word的脚本功能,其实就是微软为黑客们编制病毒而准备的。
废话少说,回归正题。要掌握VBA脚本编程,主要就是要掌握两大要点,即Word文档对象模型,和VBA语法。
计算机业界关于编程,有个很有名的公式: 程序 = 数据 + 算法。
在VBA脚本编程方面,数据就是我们要处理的文档,以文档对象模型的方式展现给我们。而算法,就是VBA语言(Visual Basic for Application)所构成的指令序列。VBA脚本,就是通过VBA语言,来操作Word文档中的各个对象,完成我们的需求。
Word通过文档对象模型,将一个Word文档的内容,全面地、有组织地展现给我们(其实就是暴露给VBA),比如各个不同的段落、文本、样式、图表、图片等,在文档对象模型中,这些都是一个个的对象,或者对象的容器或集合。每个对象,都有自己的属性、方法、事件。我们要作的,就是通过VBA,访问这些对象、容器、集合的属性,获取它们的内容(读),经过一定的判断、组织(算法)之后,再通过这些对象的属性、方法来改变它们(写)。
举些例子:
下列示例代码,将活动文档中“标题 2”的样式更改为 Arial 字体和加粗。


With ActiveDocument.Styles(wdStyleHeading2).Font
    .Name = "Arial"
    .Italic = True
End With


下列示例删除单元格 1 中的文字,插入新文字,然后对该列进行排序。


With ActiveDocument.Tables(1).Cell(1, 1)
    .Range.Delete
    .Range.InsertBefore "Sales"
    .Column.Sort
End With


Word的文档对象模型相当复杂,VBA语言对不熟悉的人来说要用起来也要学习一段时间。所以,当编写VBA程序的时候,这方面的参考资料是必不可少的。我推荐大家,没必要去买什么参考书,Word自己带的帮助文件就很好,很齐全!当安装Office软件的时候,默认是不会安装这部分参考内容的。我们需要定制我们的安装过程,注意勾选Word中“与编程相关的部分”。然后,在Word的帮助目录中,就会有“Microsoft Word Visual Basic参考”。当我们编写VBA程序的时候,这部分内容是必备的。



好了,Word介绍到这里,也差不多了。这也只能是简单的概念方面的介绍。要往深度广度来说,都是没底的。真的想深入,想成为Word高手,那是要你自己钻研进去的。


 


 

Tags: , , , ,

发表评论

*