实例八:Word与其它的Office组件的协作 知识点: Office办公套件是一个完整的整体。如果您能够熟练地使用套件进行协作办公,那一定会使您的办公效率事半功倍。基于Office环境下的集成化办公,应该是这样的:利用Word、Excel、Outlook、IE浏览器等输入或获取数据,并将数据交于Access数据管理程序进行管理;同时也可以利用Word、Excel、Outlook、IE浏览器、PowerPoint或FrontPage等程序,获得并发布Access数据库中的数据。于此,我们不难看出,整个Office套件的核心组件应该是Access数据管理程序。当然,各套件自身各有长处,比如,数据处理方面Excel就强于Access,而Outlook则是能把所有套件协调起来进行工作的有力工具。 今天,我们侧重研究如何在Word 中运用VBA调用Office其它组件的方法。 一、调用其它组件时的标识符 要创建Access对像,使用标识符Access.Application;要创建Excel对像,使用标识符Excel.Application;要创建Outlook对象,使用标识符Outlook.Application;要创建PowerPoint对象,使用标识符PowerPoint.Application;要在其它程序中创建Word对象,使用标识符Word.Application 这些标识符的具体运用,我们主要举“Word与Excel的相互调用”为例来说明。 二、Word与Excel相互调用 (一)在Word中调用Excel 首先,我们熟悉一下Excel的基本对像:工作簿对像与集合(Workbook、Workbooks)、工作表对像与集合(Worksheet、Worksheets)、单元格对像Range。这些对像在实际使用时,与我们前面介绍的“面向对像”的思想完全相同。 下例将Word中活动文档的第一段发送到Excel中,并将内容放到B3单元格中—— ’’’’==========Word联系Excel例=========== Sub 联系例一() Dim Arange Dim Aexl Arange = ActiveDocument.Paragraphs(1).Range’取得Word中第一段的文字 Set Aexl = CreateObject("Excel.Application")’利用标识符启动Excel Aexl.Visible = True’将Excel显示出来 Aexl.workbooks.Add’新建一个工作簿 Aexl.Range("B3") = Arange’将文字写入工作表中的B3单元格 Set Aexl = Nothing'终止两个程序间的联系 End Sub 代码说明: Set与CreateObject关键字,用于创建一个对其它Office组件对像的引用,无论您是在任意Office组件中,引用其它的任意Office组件,都必须使用这两个关键字。 Nothing关键字用于终止两个程序间的联系,如果没有这个关键字,程序的联系始终存在,将消耗掉大量的系统资源,容易造成死机。 “Aexl.Visible = True”这段代码用于将Excel对像显示出来。如果没有这一句,Excel将在后台运行,您可以按下“Ctrl+Alt+Del”三键,从系统进程中看到。 (二)在Excel中调用Word 本例在Excel中运行,假定在C盘Text文件夹下有一个MyDoc.doc文件,我们将在excel中启动word,并将MyDoc.doc文件第二自然段的内容写入到Excel第一个工作表的“b8”单元格中。 启动Excel打开VBA,写入如下代码: Sub 联系的例子二() Dim wd Dim Arange Set wd = CreateObject("word.application")’利用标识符启动WOrd wd.Visible = True’显示Word wd.documents.Open ("C:\Text\MyDoc.doc")’打开欲操作的对像 Arange = wd.documents(1).paragraphs(2).Range’取得要使用的文字 Workbooks(1).Worksheets(1).Range("b8") = Arange’将文字写入相应单元格 Set wd = Nothing '终止两个程序间的联系 End Sub 与前例类似,就无需解释了吧? 本实例的知识扩展:朋友们,多进行实际操作是必不可少的,大家试试其它组件间的相互调用吧。 本实例到此结束。以上内容看似简单,但真正想要能熟练地运用“集成化办公”的理念,则如何让Office套件相互间进行通讯,就成了一个非常重要的课题。能够熟练进行套件间的协作完全在于您的大量实践。 |
|