上犹电脑信息网我们一直在努力
您的位置:上犹电脑信息网 > 电脑怎么了 > 怎么取消呼叫转移设置-奇妙的VBA代码之三十二:禁用EXCEL工作簿右上角的关闭按钮

怎么取消呼叫转移设置-奇妙的VBA代码之三十二:禁用EXCEL工作簿右上角的关闭按钮

作者:上犹日期:

返回目录:电脑怎么了

在EXCEL操作中当我们需要关闭一个文件时,最经常使用的方法是单击文件右上角的"X",这时就会关闭文件了,如果玩VBA熟练了,往往要出点花样,这里给大家介绍一点,就是禁用文件右上角的"X",让人无法利用此功能关闭文件。


好了,我们先看下面的代码:


Dim BClose As Boolean


Private Sub Workbook_BeforeClose(Cancel As Boolean)


If BClose = False Then


Cancel = True


MsgBox "此功能已经被禁止,文件无法关闭!", vbExclamation, "提示"


End If


End Sub


Public Sub CloseWorkbook()


BClose = True


End Sub


代码截图:


代码解析:


a)第1行代码在模块顶部声明变量BClose为Boolean类型,默认初始值为False。


b)第2行到第7行代码工作簿的BeforeClose事件过程,通过变量BClose的当前值决定是否能够关闭工作簿,只有当BClose的值为True时,才允许关闭工作簿。如果变量BClose的值为False时将参数Cancel的值设置为True,以禁止关闭操作。


c)第8行到第11行代码CloseWorkbook过程,将变量BClose的当前值设置为True后使用Close方法关闭工作簿。


我们看看程序的运行截图,首先,我们单击关闭"X"的按钮,看看结果是怎么样的,在下面的截图中显示了"此功能已经被禁止,文件无法关闭!",这就明这个功能是无法利用的,点击这个 关闭"X"的按钮,文件时无法关闭的。


那么我们将如何关闭这个工作薄呢?不能让别人无法关闭,自己也无法关闭啊,这时就要利用上述的CloseWorkbook过程了:我们再回顾一下这个过程:


Public Sub CloseWorkbook()


BClose = True


End Sub


非常的简单,起到什么作用呢?我们先试一试,建立一个按钮关联CloseWorkbook过程,点击一下,没有任何的变化,但这时我们再点击关闭"X"的按钮,看下面的截图:


可以关闭了,就这么简单呢.原来在执行上述的CloseWorkbook过程后,BClose = True


,就可以关闭文件了,如果我们把上述的关联按钮设置的隐秘一些,是不是就可以自己才能够关闭文件了?这就是玩的花活了。


今日内容回向:


1 禁用关闭按钮的思路是什么?


2 启用关闭按钮如何做到的?


相关阅读

关键词不能为空
极力推荐

电脑蓝屏_电脑怎么了_win7问题_win10问题_设置问题_文件问题_上犹电脑信息网

关于我们