VBA之Word应用第三章第十一节:Document对象的事件

《VBA之Word应用》(版权10178982),是我推出第八套教程,教程是专门讲解VBA在Word中的应用,围绕"面向对象编程"讲解,首先让大家认识Word中VBA的对象,以及对象的属性、方法,然后通过实例让大家感受到Word VBA 的妙处。

这套教程是专门针对WORD VBA 的教程,是VBA中的稀缺资源,我给这套教程分归为中级教程,希望大家在VBA入门后再学习这套教程,这样会更加深入的理解面向对象编程的意义。

本套教程共三册十六章,今日内容为:VBA之Word应用第三章第十一节:Document对象的事件

分享成果,随喜正能量】196 人生,一站有一站的风景,一岁有一岁的味道,你的年龄应该成为你生命的勋章而不是你伤感的理由。生活嘛,慢慢来,你又不差!。

第三章 文档集合Documents对象及文档Document对象

大家好,我们继续Word VBA的讲解。这讲开始,我们进入非常重要一章的学习,文档集合Documents对象及文档Document对象。在前面的讲解中我们可以大概看出文档和文档集合在Word VBA中的作用,很多的对象都是文档对象属性的返回对象,我们通过这章的学习要掌握Word VBA的基本应用。

第十一节 Document对象的事件

大家好,这节我们讲解Document对象的事件。事件是对象的响应,在讲《VBA之EXCEL应用》的时候,大家一定记得工作簿的若干个事件,这些事件是写在了Thisworkbook模块中,在工作簿打开或者关闭时等等相关动作时发生。在Word中也是如此。事件是写在了文档的模板ThisDocument模板中。这节开始我将就Close事件和Open事件给大家以详细的讲解和介绍。

1 Document.Close事件

该事件在关闭文档时发生。

语法:

Private Sub Document_Close()

'需要做的事情

End Sub

2 Document.Open 事件

该事件在打开文档时发生。

语法:

Private Sub Document_Open()

'需要做的事情

End Sub

3 Document事件的实例

下面将给大家展示一个实例,在这个实例中,我们在打开文件时,将弹出一个对话框,告诉给用户这个文档是第八套教程的一个实例,当我们关闭的时候,会自动保存。我们看下面的代码:

Private Sub Document_Close()

ActiveDocument.Save

End Sub

Private Sub Document_Open()

MsgBox "您将打开一个文档,这个文档是第八套教程《VBA之Word应用》的一个实例!"

End Sub

代码截图:

代码解读:

1)Private Sub Document_Close()

ActiveDocument.Save

End Sub

以上代码在文档关闭时发生,在关闭的时候将执行ActiveDocument.Save,这句代码的意义是保存当前文档。

2)Private Sub Document_Open()

MsgBox "您将打开一个文档,这个文档是第八套教程《VBA之Word应用》的一个实例!"

End Sub

以上代码在文档打开时发生,在打开的时候将执行 MsgBox "您将打开一个文档,这个文档是第八套教程《VBA之Word应用》的一个实例!",这句代码的意义是弹出一个对话框,这个对话框的内容是"您将打开一个文档,这个文档是第八套教程《VBA之Word应用》的一个实例!"

下面我们看代码的执行情况:

1)打开文件:

2:打开后我们输入些字符,然后关闭

我们关闭这个文件后,再次打开(截图略),发现文档已经被保存了。

今日内容回向:

1 文档对象的Close事件的意义是什么?

2 文档对象的Open事件的意义是什么?

本讲内容参考程序文件:Doc 003文档.docm

我20多年的VBA实践经验,全部浓缩在下面的各个教程及应用工具中:

相关推荐
2501_9418705613 分钟前
面向微服务熔断与流量削峰策略的互联网系统稳定性设计与多语言工程实践分享
开发语言·python
modelmd18 分钟前
Go 编程语言指南 练习题目分享
开发语言·学习·golang
带土136 分钟前
4. C++ static关键字
开发语言·c++
C++ 老炮儿的技术栈42 分钟前
什么是通信规约
开发语言·数据结构·c++·windows·算法·安全·链表
@大迁世界1 小时前
TypeScript 的本质并非类型,而是信任
开发语言·前端·javascript·typescript·ecmascript
栗子叶1 小时前
Java对象创建的过程
java·开发语言·jvm
Amumu121381 小时前
React面向组件编程
开发语言·前端·javascript
IT=>小脑虎1 小时前
Python零基础衔接进阶知识点【详解版】
开发语言·人工智能·python
wjs20241 小时前
C 标准库 - `<float.h>》详解
开发语言
zfj3211 小时前
CyclicBarrier、CountDownLatch、Semaphore 各自的作用和用法区别
java·开发语言·countdownlatch·semaphore·cyclicbarrier