Word中对象(Objects)的理解及示例
bigegpt 2024-10-15 08:40 3 浏览
大家好,我新推出的《VBA之Word应用》教程是专门讲解VBA在Word中的应用,是围绕“面向对象编程”讲解,让大家认识Word中VBA的对象,以及对象的属性、方法的利用。通过这套教程的学习,可以让广大学员扩展自己的VBA应用。本套教程共三册十六章,其中前十五章是各种对象属性、方法的讲解,每节都有专门的实例说明这些属性方法的具体应用,最后一章是结和具体应用场景的讲解,共有二十八个实际工作中常见的实例。下面是第一章“初步认识Word之VBA”内容,今日讲解的是第三节:Word中对象(Objects)的理解及示例
第三节 Word中对象(Objects)的理解及示例
大家好,我们继续WORD VBA的讲解,这讲的内容仍是基本知识的讲解。在上两节中,我们介绍了如何录制宏及运行宏,接下来的内容是理解Word中对象(Objects)、属性(Properties)和方法(Methods),在之前的讲解中,我曾经讲过,VBA是面向对象的编程语言,学习VBA的过程就是深入理解对象(Objects)、属性(Properties)和方法(Methods)以及事件(Event)的过程,Word VBA的学习过程也是如此,我们要理解Word这个应用程序中的对象有哪些?对象的属性有哪些?对象的方法有哪些?作为一项基本的知识点理解,我在接下来的几节中给大家详细地介绍。
1 Word 中的对象(objects)和集合(collections)
对象表示 Word 的元素(Element),如文档(Document)、段落(Paragraph)、书签(Bookmark)或单个字符(character)。集合是包含多个对象(通常为相同类型)的对象,例如,文档中的所有书签对象都包含在一个集合对象中。通过使用属性(Properties)和方法(Methods),可以更改单个对象或整个对象集合。下面通过文档(Document)、段落(Paragraph)两个对象给大家简单地说明一下对象的概念及操作。
2 Document对象和Documents集合
Document对象,代表一个文档,是Documents集合的一个成员。 Documents 集合包含Word中当前打开的所有Document对象。
使用 Documents(index), 其中index是文档名称或索引号, 返回单个文档对象。下面的示例在不保存更改的情况下关闭名为 "示例01.doc" 的文档。
Sub mynzB()
Documents("示例01").Close SaveChanges:=wdDoNotSaveChanges
End Sub
索引编号代表文档在 Documents 集合中的位置。以下示例激活 Documents 集合中的第一篇文档。
Sub mynzC()
Documents(1).Activate
End Sub
可以使用ActiveDocument属性来引用具有焦点的文档。下面的示例使用activate方法激活名为“示例01”的文档。 示例还会将页面方向设置为横向模式,然后再打印文档。
Sub mynzD()
Documents("示例01").Activate
ActiveDocument.PageSetup.Orientation = wdOrientLandscape
ActiveDocument.PrintOut
End Sub
3 Paragraph对象和Paragraphs 集合
Paragraph对象,代表所选内容、范围或文档中的一个段落。Paragraph对象是Paragraphs集合的成员。Paragraphs集合包含所选内容、范围或文档中的所有段落。
使用 Paragraphs(Index)可返回一个Paragraph对象,其中Index为索引号。以下示例将活动文档中的第一段右对齐。
Sub mynzE() '将活动文档中的第一段右对齐。
Dim myDoc As Document
Set myDoc = Documents.Open(ActiveDocument.Path & "\示例01.docx")
Documents("示例01").Activate
ActiveDocument.Paragraphs(1).Alignment = wdAlignParagraphRight
End Sub
代码的截图:
代码的执行效果:
使用add、InsertParagraph、InsertParagraphAfter或InsertParagraphBefore方法可向文档中添加一个新的空白段落。
以下示例在所选内容的第一段前添加一个段落标记。
Sub mynzF() '所选内容的第一段前添加一个段落标记
Dim myDoc As Document
Set myDoc = Documents.Open(ActiveDocument.Path & "\示例01.docx")
Documents("示例01").Activate
Selection.Paragraphs.Add Range:=Selection.Paragraphs(1).Range
End Sub
代码的截图:
代码的执行效果:
以下示例同样在所选内容的第一段前添加一个段落标记。
Selection.Paragraphs(1).Range.InsertParagraphBefore
今日内容回向:
1 如何理解Word中的对象和集合?
2 Word中的对象主要有哪些?
3 什么是Document对象和Documents集合?
4 什么是Paragraph对象和Paragraphs集合?
本讲内容参考程序文件:Doc 001文档.docm
- VBA是利用Office实现个人小型办公自动化的有效手段(工具)。这是我对VBA的应用界定。如何学习VBA呢? 概括的说就是: 学习过程中要信、解、受、持,更要有回向的业力。无论您在学习的任何阶段,都要对照教程的知识点加持自己的实际工作,总会有丰厚的收获。
- 我根据自己多年VBA实际利用经验,推出了八部VBA专门教程。第1套教程:VBA代码解决方案 ;第2套教程:VBA数据库解决方案;第3套教程:VBA数组与字典解决方案;第4套教程:VBA代码解决方案之视频(第一套的视频讲解);第5套教程:VBA中类的解读和利用;第6套教程:VBA信息获取与处理;第7套教程:VBA之EXCEL应用;第8套教程:VBA之Word应用(最新)。上述教程的学习顺序:
① 7→1→3→2→6→5或者7→4→3→2→6→5 ② 7→8
- 第一套:VBA代码解决方案 是VBA中各个知识点的讲解,教程共147讲,覆盖绝大多数的VBA知识点,提供的程序文件更是一座不可多得的代码宝库,是初学及中级人员必备教程;目前这套教程提供的版本是修订第二版,程序文件通过32位和64位两种OFFICE系统测试。
- 第二套:VBA数据库解决方案 数据库是数据处理的专业利器,教程中详细介绍了利用ADO连接ACCDB和EXCEL的方法和实例操作,适合中级人员的学习。目前这套教程提供的是修订第一版教程,程序文件通过32位和64位两种OFFICE系统测试。
- 第三套:VBA数组与字典解决方案 数组和字典是VBA的精华,字典是VBA代码水平提高的有效手段,值得深入的学习,是初级及中级人员代码精进的手段。目前这套教程提供的版本是修订第一版,程序文件通过32位和64位两种OFFICE系统测试。
- 第四套:VBA代码解决方案之视频 是专门面向初学者的视频讲解,可以快速入门,更快的掌握这门技能。这套教程是第一套教程(修订一版)的视频讲解,视频更易接受。
- 第五套:VBA中类的解读和利用 这是一部高级教程,讲解类的虚无与肉身的度化,类的利用虽然较少,但仔细的学习可以促进自己VBA理论的提高。这套教程的领会主要是读者的领悟了,领悟一种佛学的哲理。目前这套教程提供的版本是修订第一版,程序文件通过32位和64位两种OFFICE系统测试。
- 第六套教程:VBA信息获取与处理,这是一部高级教程,涉及范围更广,实用性更强,面向中高级人员。教程共二十个专题,包括:跨应用程序信息获得、随机信息的利用、电子邮件的发送、VBA互联网数据抓取、VBA延时操作,剪切板应用、Split函数扩展、工作表信息与其他应用交互,FSO对象的利用、工作表及文件夹信息的获取、图形信息的获取以及定制工作表信息函数等等内容。程序文件通过32位和64位两种OFFICE系统测试。
- 第七套教程:VBA之EXCEL应用 这是一部初级教程这部教程共三册,从从创建宏、对话框、工作簿和工作表对象、单元格对象等基础内容讲起,到循环结构、错误处理、字符串操作、日期和时间、事件、数组应用,函数过程等方面,一直讲解到控件和窗体对象的应用都是我们提高自己EXCEL水平的必须。
- 第八套教程:VBA之WORD应用 是围绕“面向对象编程”展开的讲解,让大家充分认识Word中VBA的对象,以及对象的属性、方法及利用。教程共分三册,十六章,其中前十五章是各种对象属性、方法的讲解,每节都有专门的实例说明这些属性方法的具体应用,最后一章是结和具体应用场景的讲解,详细讲解了二十八个实际工作中有代表性的实例,紧扣word数据的批量处理,发挥VBA的长处。本套教程实例众多,大家可以拿来即用,或者修正后加以利用。由于这套教程是围绕“面向对象编程”来展开,建议大家先学《VBA之Excel应用》,对VBA中的对象、属性、方法、事件有一定认识后再来学习这套教程。
相关推荐
- 得物可观测平台架构升级:基于GreptimeDB的全新监控体系实践
-
一、摘要在前端可观测分析场景中,需要实时观测并处理多地、多环境的运行情况,以保障Web应用和移动端的可用性与性能。传统方案往往依赖代理Agent→消息队列→流计算引擎→OLAP存储...
- warm-flow新春版:网关直连和流程图重构
-
本期主要解决了网关直连和流程图重构,可以自此之后可支持各种复杂的网关混合、多网关直连使用。-新增Ruoyi-Vue-Plus优秀开源集成案例更新日志[feat]导入、导出和保存等新增json格式支持...
- 扣子空间体验报告
-
在数字化时代,智能工具的应用正不断拓展到我们工作和生活的各个角落。从任务规划到项目执行,再到任务管理,作者深入探讨了这款工具在不同场景下的表现和潜力。通过具体的应用实例,文章展示了扣子空间如何帮助用户...
- spider-flow:开源的可视化方式定义爬虫方案
-
spider-flow简介spider-flow是一个爬虫平台,以可视化推拽方式定义爬取流程,无需代码即可实现一个爬虫服务。spider-flow特性支持css选择器、正则提取支持JSON/XML格式...
- solon-flow 你好世界!
-
solon-flow是一个基础级的流处理引擎(可用于业务规则、决策处理、计算编排、流程审批等......)。提供有“开放式”驱动定制支持,像jdbc有mysql或pgsql等驱动,可...
- 新一代开源爬虫平台:SpiderFlow
-
SpiderFlow:新一代爬虫平台,以图形化方式定义爬虫流程,不写代码即可完成爬虫。-精选真开源,释放新价值。概览Spider-Flow是一个开源的、面向所有用户的Web端爬虫构建平台,它使用Ja...
- 通过 SQL 训练机器学习模型的引擎
-
关注薪资待遇的同学应该知道,机器学习相关的岗位工资普遍偏高啊。同时随着各种通用机器学习框架的出现,机器学习的门槛也在逐渐降低,训练一个简单的机器学习模型变得不那么难。但是不得不承认对于一些数据相关的工...
- 鼠须管输入法rime for Mac
-
鼠须管输入法forMac是一款十分新颖的跨平台输入法软件,全名是中州韵输入法引擎,鼠须管输入法mac版不仅仅是一个输入法,而是一个输入法算法框架。Rime的基础架构十分精良,一套算法支持了拼音、...
- Go语言 1.20 版本正式发布:新版详细介绍
-
Go1.20简介最新的Go版本1.20在Go1.19发布六个月后发布。它的大部分更改都在工具链、运行时和库的实现中。一如既往,该版本保持了Go1的兼容性承诺。我们期望几乎所...
- iOS 10平台SpriteKit新特性之Tile Maps(上)
-
简介苹果公司在WWDC2016大会上向人们展示了一大批新的好东西。其中之一就是SpriteKitTileEditor。这款工具易于上手,而且看起来速度特别快。在本教程中,你将了解关于TileE...
- 程序员简历例句—范例Java、Python、C++模板
-
个人简介通用简介:有良好的代码风格,通过添加注释提高代码可读性,注重代码质量,研读过XXX,XXX等多个开源项目源码从而学习增强代码的健壮性与扩展性。具备良好的代码编程习惯及文档编写能力,参与多个高...
- Telerik UI for iOS Q3 2015正式发布
-
近日,TelerikUIforiOS正式发布了Q32015。新版本新增对XCode7、Swift2.0和iOS9的支持,同时还新增了对数轴、不连续的日期时间轴等;改进TKDataPoin...
- ios使用ijkplayer+nginx进行视频直播
-
上两节,我们讲到使用nginx和ngixn的rtmp模块搭建直播的服务器,接着我们讲解了在Android使用ijkplayer来作为我们的视频直播播放器,整个过程中,需要注意的就是ijlplayer编...
- IOS技术分享|iOS快速生成开发文档(一)
-
前言对于开发人员而言,文档的作用不言而喻。文档不仅可以提高软件开发效率,还能便于以后的软件开发、使用和维护。本文主要讲述Objective-C快速生成开发文档工具appledoc。简介apple...
- macOS下配置VS Code C++开发环境
-
本文介绍在苹果macOS操作系统下,配置VisualStudioCode的C/C++开发环境的过程,本环境使用Clang/LLVM编译器和调试器。一、前置条件本文默认前置条件是,您的开发设备已...
- 一周热门
- 最近发表
- 标签列表
-
- mybatiscollection (79)
- mqtt服务器 (88)
- keyerror (78)
- c#map (65)
- resize函数 (64)
- xftp6 (83)
- bt搜索 (75)
- c#var (76)
- mybatis大于等于 (64)
- xcode-select (66)
- httperror403.14-forbidden (63)
- logstashinput (65)
- hadoop端口 (65)
- dockernetworkconnect (63)
- esxi7 (63)
- vue阻止冒泡 (67)
- c#for循环 (63)
- oracle时间戳转换日期 (64)
- jquery跨域 (68)
- php写入文件 (73)
- java大写转小写 (63)
- kafkatools (66)
- mysql导出数据库 (66)
- jquery鼠标移入移出 (71)
- 取小数点后两位的函数 (73)