和在VBA中编写自己的代码基本相同,能够缺省的代码也无需使用。本方式启动的Word和Delphi程式分属两个窗体。缺点是使用本方法没有Delphi代码提示,任何异常处理均需要自己编写,可能编写时探索性知识比较多。
三、Word宏编辑器
Word能够真正地进行VBA代码的编辑,能够编写窗体、函数。
进入Word宏编辑器的方法:工具->宏->Visual Basic编辑器,可进入Visual Basic编辑器界面。Word的Visual
Basic编辑器界面和真正的Visual
Basic编辑器基本相同,在此不再向详述。在VBA代码中,能够添加用户窗体、模块、类模块。用户窗体、模块、类模块的概念和Visual
Basic完全相同。注释也和Visual Basic完全相同。
能够将光标停留在窗体、模块的任何一个子程式上,直接按“F5”运行当前子程式。
四、Word的宏的概述
Word充分地将文档编辑和VB结合起来,真正地实现文档的自动化。使用Word编程,类似于使用Visual
Basic,所不同的是,在Word中,能够直接运行某一个子程式,直接看见结果,Word的宏,只能解释运行,而Visual
Basic,现在已能够编写成真正的机器码,从代码的保护上来说,应该尽可能地减少Word的VBA代码数量,尤其是关键的代码。
VBA宏,可分成四种:
1、和命令名相同的宏
如FileSave,FileOpen,假如在
VBA代码中包含和Word同名的函数,则直接执行这些VBA代码,忽略Word本身的命令。
2、Word内特定的宏
这些宏包含AutoExec(启动 Word
或加载全局模板)、AutoNew(
每次新建文档时)、AutoOpen(每次打开已有文档时)、AutoClose(每次关闭文档时),AutoExit(退出
Word 或卸载全局模板时)。
假如VBA代码中含有这些名称的函数,则满足相应的条件,相应代码就自动执行。
3、相应事件的VBA宏
这些宏是由事件触发的宏,如Document_Close在文档关闭的时候触发事件,Document_New在新建文档的时候触发,Document_Open在打开文档的时候触发。
4、单独的宏
自己编写的VBA代码,即不属于上面几种情况的VBA代码,能够被其他VBA代码调用,更重要的是,能够被其他程式调用。
这样,我们就能够屏弃Word自动执行的宏,通过Delphi直接调用相应宏来达到目的。
[b]五、Word命令宏的周详描述[/b]
Word本身的命令函数包含很多,但是无论是word联机帮助还是MSDN帮助,都没有这方面的介绍,因此只能凭自己的实验取探索,初步探测的函数如下:
宏名 解释 注释
FileNew 新建
FileNewDefault 新建空白文档
FileSaveAs 另存为
FileOpen 打开
FileClose 关闭
FilePrint 打印
FilePrintPreview 打印预览
ToolsCustomize 工具栏里面的自定义
ToolsOptions 工具选项
ToolsRevisions 突出显示修订
ToolsReviewRevisions 接受或拒绝修订
ToolsRevisionMarksAccept 接受修订
ToolsRevisionMarksReject 拒绝修订
ToolsRevisionMarksToggle 修订
ToolsMacro 宏
ToolsRecordMacroToggle 录制新宏
ViewSecurity 安全性
ViewVBCode 查看VB编辑器环境
FileTemplates 模板和可加载项
ToolsProtectUnprotectDocument 解除对文档的保护
InsertHyperlink 插入终极链接
EditHyperlink 编辑终极链接
DeleteHyperlink 删除终极链接
EditLinks 查看、删除链接
EditPasteAsHyperlink 粘贴终极链接
FormatStyle 样式
EditBookMark 书签
OleWord时一些用用的代码
3710167@qq.com
一、Delphi程式启动Word
采用CreateOleObjects的方法来启动Word,调用VBA代码,具体实现过程为:
首先使用GetActiveOleObject(Word.Application)判断当前内存中是否存在Word程式,假如存在,则直接连接,假如没有Word程式,则使用CreateOleObject(Word.Application)启动Word
二、Delphi程式新建Word文稿
格式:WordDocuments.Add(Template,NewTemplate,DocumentType,Visible)
Template: 使