Word编程对象模型
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
段落
• Paragraphs • 段落 • 编号从1开始,最大的段编号是 Paragraphs.count • 使用序号为i的某一段(i在1到 Paragraphs.count之间): Paragraphs(i)
段落格式
• 使用Paragraphs(i).range来设置段落格式 • 如果设置的格式很多,可用 with 文档名. Paragraphs(i).range 设置格式 end with 形式来设置
段落字体
• Paragraphs(i).range.font.underline 下划线
段落格式
• • • • • • • • • • • • Paragraphs(i).range. ParagraphFormat.Alignment 段落对齐 常量 名称描述 赋值 wdAlignParagraphCenter 居中 1 wdAlignParagraphDistribute 分散对齐 4 wdAlignParagraphJustify 等同效果左对齐 3 wdAlignParagraphJustifyHi 等同效果左对齐 7 wdAlignParagraphJustifyLow 等同效果左对齐 8 wdAlignParagraphJustifyMed 等同效果左对齐 5 wdAlignParagraphLeft 左对齐(两端对齐) 0 wdAlignParagraphRight 右对齐 2 wdAlignParagraphThaiJustify 等同效果左对齐 9
段落字体
• • • • • • • • Paragraphs(i).range.font Paragraphs(i).range.font.name=“字体名称” Paragraphs(i).range.font.பைடு நூலகம்old=true(加粗) Paragraphs(i).range.font.bold=false(取消加粗) Paragraphs(i).range.font.size=(磅值)(字号) Paragraphs(i).range.font.color=颜色的常量 Paragraphs(i).range.font.italic=true 设置斜体 Paragraphs(i).range.font.italic=false 取消斜体
插入文件
• 指定要插入文件的位置 • 用insertfile 文件名 • 的方法插入文件
判断一个文件是否存在
使用scripting类库
判断一个文件是否存在
Dim fso As New FileSystemObject If fso.FileExists(要检测的文件名(包括路径) =true Then fso.DeleteFile 文件 (删除此文件) End If
Word
编 程 对 象 模 型
Application 对象。Application 对象代 表微软Word 应用程序, 它是所有其 他Word 对象的最顶层对象。 Application对象包含可返回最高级对 象的属性和方法, 通过使用这些属性 和方法可以控制整个Word 环境。在程 序中必须要通过这个对象启动Word, 才可以实现对Word 程序的控制; 进而 可以打开Word 文档, 实现对其他对 象的控制。
Selection 对象。Selection 对象代表窗 口或窗格中的当前所选定的内容; 若文 档中没有所选内容, 则代表插入点。每 个文档窗格只能有一个活动的 Selection 对象, 并且整个应用程序中 只能有一个活动的Selection 对象。
Range 对象。Range 对象代表文档中的 一个连续范围, 每一个Range 对象由一 个起始和一个终止字符位置定义。注意, Range 对象和Selection 对象是不同的: 可定义和复制一个范围而不需改变所选 内容; 还可在文档中定义多个范围,但每 一个窗格中只能有一个所选内容。另外, Range 对象只在定义该对象的过程正在 运行时才存在。
段落格式
• Paragraphs(i).range. ParagraphFormat.SpaceAfter • 段后间距 值为磅值 • Paragraphs(i).range. ParagraphFormat.Spacebefore • 段前间距 值为磅值
首字下沉
• Paragraphs(i). DropCap • Paragraphs(i). DropCap.Position = wdDropNormal (下沉状态,正常) • Paragraphs(i).DropCap.Position = wdDropNone • (取消下沉 • Paragraphs(i).DropCap.LinesToDrop = 3 • (下沉的行数)
Document 对象。Document 对象代表一 篇Word 文档,这个对象是Word 程序设 计的重点。Document 对象是 Documents集合中的一个元素, Documents 集合包含Word 当前打开的 所有Document 对象。在应用程序中当 打开一个已有的Word 文档或者建立一 个新的Word 文档时, 就建立了一个新 的Document 对象并将其加入 Documents 集合。因此, 一般都可以通 过Documents 集合对象来访问具体的 Document 对象。
段落格式
• 使用Paragraphs(i).range来设置段落格式 • 如果设置的格式很多,可用 with 文档名. Paragraphs(i).range 设置格式 end with 形式来设置
段落字体
• • • • • • • • Paragraphs(i).range.font Paragraphs(i).range.font.name=“字体名称” Paragraphs(i).range.font.bold=true(加粗) Paragraphs(i).range.font.bold=false(取消加粗) Paragraphs(i).range.font.size=(磅值)(字号) Paragraphs(i).range.font.color=颜色的常量 Paragraphs(i).range.font.italic=true 设置斜体 Paragraphs(i).range.font.italic=false 取消斜体
以模版方式新建word文档
• 启动word,新建一个模板,另存为模板文 件 • 重建和上个实验相同的VB工程 • 代码改为 • Set doc=wrdapp.documents.add(“模板名 称”)
Excel和Word混合编程
• 完成“授课通知书” • 读取Excel的数据,填写到对应的Word文档 中,每条记录对应的文档保存为一个word 文件。
Bookmark 对象。Bookmark 对象代表单个书签, 它和Range 对象有点类似: 也是用于代表文档 中的一个连续范围,也是由一个起始和一个终 止字符位置定义。但是Bookmarks 对象和 Range 对象主要的不同点在于: Bookmarks 对 象可以同所在的文档一起保存, 也就是说即使 建立Bookmarks 对象的程序停止运行甚至是 Bookmarks 对象所在的对象关闭了, Bookmarks对象也不会自动消失。而指定的选 定内容、区域或文档中的所有书签则组成了 Bookmarks 对象; 一般也都可以通过 Bookmarks 集合对象来访问具体的Bookmark 对象。
段落格式
• Paragraphs(i).range. ParagraphFormat.SpaceAfter • 段后间距 值为磅值 • Paragraphs(i).range. ParagraphFormat.Spacebefore • 段前间距 值为磅值
首字下沉
• Paragraphs(i). DropCap • Paragraphs(i). DropCap.Position = wdDropNormal (下沉状态,正常) • Paragraphs(i).DropCap.Position = wdDropNone • (取消下沉 • Paragraphs(i).DropCap.LinesToDrop = 3 • (下沉的行数)
界面设计
• 在窗体上添加一个命令按钮,在属性窗口 中将其caption属性值改为“建立”。
代码编写(1)
• 双击命令按钮,会弹出代码窗口,代码窗 口中显示如下两行代码,不要改动,将光 标移到这两条代码之间,编写代码
代码编写(2)
运行
• 保存工程,系统会提示先后保存窗体和工 程文件。 • 然后点击“运行”-“启动” • 在窗体中点击“建立”的命令按钮。 • 到D盘下查看mytest.docx文件。
操作步骤
• 创建word文档(已经建好) • 在需要填写内容的地方创建书签 点击“插入”-“链接”-“书签” 输入书签名称(本例依次从a1编到a7), 点击“添加” • 将修改后的文档以book.dotx(模板类型) 保存。
操作步骤
• • • • 启动VB程序 新建工程 引用Excel和word类库(方法同前) 在界面上添加命令按钮,设置界面,并编 写代码,完成任务要求
VB中访问Word的方法
• 新建一个VB的标准EXE工程 • 工程-引用-勾中Microsoft word 12.0 Object Library(12.0是word 2007的版本,如果电脑上安装的版本不同,
这个版本号可能不一样)
• 然后进行编程。 • 本例要新建一个word文件,在里面插入两 行文字,然后以mytest.docx文件名保存于 D盘或(C盘)
复制段落格式
• • • • • • • 利用selection对象 将要复制格式的段落选定 Paragraphs(i).Range.Select 此时selection就代表这个选定的段落 Wrdapp.selection.copyformat (复制其格式) 选定其它要应用此格式的段落 Wrdapp.selection.pasteformat (应用其格式)
复制段落格式
• • • • • • • 利用selection对象 将要复制格式的段落选定 Paragraphs(i).Range.Select 此时selection就代表这个选定的段落 Wrdapp.selection.copyformat (复制其格式) 选定其它要应用此格式的段落 Wrdapp.selection.pasteformat (应用其格式)
新建VB工程练习上述内容
• 引入word类库和scripting类库 • 添加一个命令按钮,在命令按钮的单击事 件中写代码
段落
• Paragraphs • 段落 • 编号从1开始,最大的段编号是 Paragraphs.count • 使用序号为i的某一段(i在1到 Paragraphs.count之间): Paragraphs(i)
段落字体
• Paragraphs(i).range.font.underline 下划线
段落格式
• • • • • • • • • • • • Paragraphs(i).range. ParagraphFormat.Alignment 段落对齐 常量 名称描述 赋值 wdAlignParagraphCenter 居中 1 wdAlignParagraphDistribute 分散对齐 4 wdAlignParagraphJustify 等同效果左对齐 3 wdAlignParagraphJustifyHi 等同效果左对齐 7 wdAlignParagraphJustifyLow 等同效果左对齐 8 wdAlignParagraphJustifyMed 等同效果左对齐 5 wdAlignParagraphLeft 左对齐(两端对齐) 0 wdAlignParagraphRight 右对齐 2 wdAlignParagraphThaiJustify 等同效果左对齐 9