【VBA编程】13.Workbook对象的事件
Workbook事件用于响应对Workbook对象所进行的操作。
【BeforeClose事件】
BforeClose事件用于响应窗口关闭的操作
在工程资源器中,双击“ThisWorkbook”对象,弹出"ThisWorkbook"窗口,并且选择Workbook,BeforeClose

并在窗口中写下如下代码:
【代码区域】
Private Sub Workbook_BeforeClose(Cancel As Boolean)
If ThisWorkbook.Saved = False Then
ThisWorkbook.Save
MsgBox "工作簿已经发生变更,已经保存", vbOKOnly, "测试BeforeClose事件"
Cancle = True
End If
End Sub
接着保存即可。保存完毕之后,重新打开Excle,编辑后直接退出。则会出现如下结果
【结果展示】

【BeforeSave事件】
BeforeSave用于响应保存操作,当保存操作发生时,将触发BeforeSave操作
与BeforeClose事件操作一致
【代码区域】
Private Sub workbook_BeforeSave(ByVal saveAsUI As Boolean, cancel As Boolean)
sel = MsgBox("真的要保存对工作簿的修改吗?", vbYesNo, "测试BeforeSave事件")
If sel = vbNo Then
cancel = True
End If
End Sub
【结果展示】

【WindowsActivate事件】
WindowsActivate事件用于保存响应激活窗口的操作,当激活窗口时,首先执行此函数内部的代码,然后执行激活窗口的后续操作
【代码区域】
Private Sub workbook_windowsActivate(ByVal wn As Window)
MsgBox "欢迎使用Excle 2013电子表格处理程序", vbOKOnly, "测试windowsActivate事件"
End Sub
Private Sub workbook_windowresize(ByVal wn As Window)
MsgBox "你已经调整了Excle 2013应用程序的窗口大小", vbOKOnly, "测试windowsActivate事件"
End Sub
如下调整窗口大小时:

【效果展示】

【VBA编程】13.Workbook对象的事件的更多相关文章
- Egret --视觉编程,显示对象,事件
1,在egret中,视觉图形都是由显示对象和显示对象容器组成的: 显示对象:准确的说,就是在舞台上显示出来的,包括能真实看见的图形,文字,图片,视频等:也包括不能看见但真实存在的显示对象容器: 一:显 ...
- 【VBA编程】11.Application对象
Application对象常用属性[ActiveCell属性]ActiveCell属性返回一个Range对象,表示当前窗口或指定窗口中的单元格.如果窗口没显示工作表,则此属性无效.[代码区域] Sub ...
- vba编程基础2
安装office2010的时候, 最好是 完全安装/完整安装 , 这样可以查阅 excel的 "帮助文档" 帮助文档中包含了更多的/更详细的 参考信息. 普通模块无事件, 只有 子 ...
- VBA编程的工程性规划
看过很多人写的VBA代码,一团一团的,一点规划都没有,为了VBA编程更具工程性,这里讨论一下,并列出自己的一些建议:0.给VBA工程定义一个名字,而非直接使用默认的名称——"VBAProje ...
- 6 Workbook 对象
6.1 在奔跑之前先学会走路:打开和关闭工作薄 代码清单6.1:一个完整的工作薄批处理框架 '代码清单6.1:一个完整的工作薄批处理框架 Sub ProcessFileBatch() Dim nInd ...
- VBA编程常用词汇英汉对照表
表 20‑1到表 20‑8是VBA编程中使用频率最高的英文单词,按字母排序.词性列中,a表示形容词,n表示名词,v表示动词,p表示介词以及其他词性. 表 20‑1 VBA编程常用词汇表 单词 中文 词 ...
- 电子表格控件Spreadsheet 对象方法事件详细介绍
1.ActiveCell:返回代表活动单元格的Range只读对象.2.ActiveSheet:返回代表活动工作表的WorkSheet只读对象.3.ActiveWindow:返回表示当前窗口的Windo ...
- 【温故而知新-万花筒】C# 异步编程 逆变 协变 委托 事件 事件参数 迭代 线程、多线程、线程池、后台线程
额基本脱离了2.0 3.5的时代了.在.net 4.0+ 时代.一切都是辣么简单! 参考文档: http://www.cnblogs.com/linzheng/archive/2012/04/11/2 ...
- vba编程基础1
在主要的编程语言中, 结构体是用大括号来表示 代码段的 范围 界定的. 但是在一些比较"老的"语言中,由于历史原因, 还是使用的 是: 关键字来进行界定代码 的 结构段, 如vba ...
随机推荐
- Section One
1.1.1 #include <iostream> using namespace std; int main() { int a,b,N; cin >> N; while ( ...
- bzoj 3373: [Usaco2004 Mar]Lying Livestock 说谎的牲畜
3373: [Usaco2004 Mar]Lying Livestock 说谎的牲畜 Description 兽群中总是有一些麻烦制造者.约翰知道他的N(1≤N≤100)头奶牛中有一头总是说谎,其他的 ...
- 求n以内的质数的数量
- Codeforces Round #127 (Div. 1) C. Fragile Bridges dp
C. Fragile Bridges 题目连接: http://codeforces.com/contest/201/problem/C Description You are playing a v ...
- GCC编绎详解
http://www.cnblogs.com/lisuyun/p/4169395.html http://blog.csdn.net/kai_gai/article/details/45689247 ...
- jquery缩写,显示隐藏
$(".a").css("display")=="none" ?$(".a").css("display&qu ...
- 回顾苹果操作系统Mac OS的发展历史
在新的MacBook AIR和Mac OS X Lion即将发布之际,我们仅以此文向伟大的苹果和乔布斯致敬.并祝Apple教主乔布斯早日康复,长命百岁,千秋万载,一统苹果! Mac OS是指运行于苹果 ...
- 两篇整合Activiti Modeler到业务系统
1. 无法进入editor. http://localhost:8080/YouPRJ/modeler/service/editor?id=2050,前提是这个id必需存在与act_re_model表 ...
- android非法字符的判定、表情符号的判定
public class EmojiEditText extends EditText {// 输入表情前的光标位置private int cursorPos; // 输入表情前EditText中的文 ...
- Linux系统下,启动Tomcat有时报Address already in use
一.Linux系统下,启动Tomcat有时报Address already in use<null>... 1.那是因为你的tomcat已经启动了tomcat自带的关闭脚本,有时候关闭看上 ...