Word域与数据库的结合编程.doc
上传人:qw****27 上传时间:2024-09-12 格式:DOC 页数:14 大小:120KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

Word域与数据库的结合编程.doc

Word域与数据库的结合编程.doc

预览

免费试读已结束,剩余 4 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

Word域与数据库的结合编程本文介绍了Word域与数据库结合的方法,给用户提供一个插入Word域的界面,并把数据库的数据填充到Word文件中。域是Word中最具有实用价值的功能之一,它表示文档中可能发生变化的数据或邮件合并文档中套用信函、标签中的占位符。MicrosoftWord可以在您使用一些特定命令时插入域,如"插入"菜单上的"日期和时间"命令。您也可使用"插入"菜单上的"域"命令手动插入域。事实上,我们在日常工作中常会脱离MicrosoftWord的操作环境。一般,用户是先建立好一些Word文件模板,然后利用所提供的应用程序功能向Word文件模板中插入域,用该域对应的值取代域值,这样就达到了向MicrosoftWord文件中插入数据的作用。我们常把数据放入数据库中,数据库的内容不断地变化,我们的域值也跟着不断地变化,取到灵活自动更新的作用,要达到这方面的功能,就应该把数据库与Word域结合起来。解决方法首先要解决这一问题,我们必须先了解Word域有关的知识:Word域代码位于花括号或大括号({})中,域类似于MicrosoftExcel中的公式:域代码类似于公式,域结果(域结果:当MicrosoftWord执行域指令时,在文档中插入的文字或图形。在打印文档或隐藏域代码时,将以域结果替换域代码。)类似于公式产生的值。可在文档中切换显示域代码及其结果。正好,数据库的字段名对应域代码,字段值对应域值。我们利用VBA编程可以达到目的。VBAforWord中有关域的类型很多,其中Type:=wdFieldAddin是一种关于字段与字段值对应的特殊域,正是借助它的功能解决问题。我们可以这么设想,用户先打开Word文件,然后向打开的Word文件中插入域,然后用数据库的数据填充。插入域时有二种可能,一种是单值域,即一个域代码对应一个域值(一对一关系),这种情况的域可以插入任何地方;另一种情况是多值域,即一个域代码对应多个域值(一对多关系)。这种情况的域只能插入表格中,并且当表格的行数比域值少时,要能自动提供增加表格行的功能。实例说明利用VisualBasic。Net编写通用的类,给用户提供可视化的编辑界面,用于用户在Word文件中插入域标志。针对Word文件或Excel表格文件,扫描整个文件,将其中的域标志取出来,然后通过从数据库中取出字段所对应的值,将值填写到文件中域对应的位置。若对应位置已有值,则判断该值与要填写的值是否相同,若不同则替换之。插入值分为:A。单纯的值,直接使用一个值替换域。B。表格中的单元格。若该表格填写不下,是否增加表格单元?以及与该单元关联的域等。例如,有二个Access数据库的表(:表1对应单值域,表2对应多值域)如下:表1:工程工程名称设计阶段工程检索号项目名称新制字数图片数建模工具学习(2)http://www.21cmm.comfw-jm-2002软件工程专家网6010003表2:校核序号校核主要问题执行情况1排列不齐No2文字错Yes3文字错Yes4内容提要不详细No5文字错Yes6数据有误No利用VBA编写的一个通用的处理Word域的程序。开发步骤如下:1.建立项目,向项目中增加处理Word域的类启动VisualStudio。NET。在新建项目中选择VisualBasic项目,在模板中选择Windows应用程序,把工程名更改为WordDoc。●向工程中增加名称为CWordDoc的类。●定义的CWordDoc类的属性。代码如下:'定义Word应用对象及文档对象PrivatewdAppAsNewWord..Application()PrivatewdDocAsNewWord.Document()'所处理的Word模板文件PrivateFileNameAsString'域的个数及对应的数组DimFieldCountAsInt16DimMyField()'Word是否已运行PrivateIsWordRunningAsBoolean'是否已经插入了表格行PrivateIsInsertRowAsBoolean'Word工具栏对象及菜单栏对象数组DimCommandBarIndex()AsIntegerDimSaveCommandBarMenuIndex()AsInteger●定义的CWordDoc类的方法。定义打开Word文件的方法。建立Word应用对象和文档对象,并打开Word文件。设定Word已经运行。VBA编程主要是先建立某一个应用程序的对象,然后按需要处理应用对象。Word应用对象是“Word.Application”,通过CreateObject方法建立之。代码如下:PublicSubOpenWordDocument(ByValFileNameA