当前位置:首页 > 攻略

【禁用宏】抱歉,如果禁用宏,你将无法工作

[分享成果,喜悦和正能量]睿智的人能看透,所以不吵架。豁达的人不会打架,因为他能敞开心扉。

得道的人晓天意,故不急。厚德的人重谦和,故不噪。明理的人放得下,故不痴。自信的人肯努力,故不误。重义的人交天下,故不孤。浓情的人淡名利,故不独。宁静的人行深远,故不折。知足的人常快乐,故不老。

《VBA代码解决方案》这套教程是我最早推出的教程,目前已经是第二版修订了。这套教程定位于入门后的提高,在学习这套教程过程中,侧重点是要理解及掌握我的“积木编程”思想。要灵活运用教程中的实例像搭积木一下把自己喜欢的代码摆好。

这套教程共三册,一百四十七讲,内容覆盖较广,也是初级和中级间的过度教程,改版后的内容主要是提供程序源码文件及代码修正为32位和64位兼用代码。今后一段时间会给大家陆续推出。今日的内容是第21讲:抱歉,如果禁用宏,你将无法工作

第二十一讲 在EXCEL中,如果禁用VBA将无法继续工作

朋友们好,今日我们继续讲解VBA代码解决方案的第21讲,这讲的内容中我们会讲解在使用VBA开发的工作簿文件完成后,要求用户在打开工作薄时同时启用VBA代码。也就是说我们希望用户在打开工作簿时启用宏,此时可以使用“禁用宏则关闭工作簿”的功能外。

还可以隐藏所有有数据的工作表,如果用户在打开工作簿时禁用宏则只显示一张空白的工作表,达到强制启用宏的效果。

这里会用到应用于Worksheets(工作表)对象的Visible属性。这个属性决定对象是否可见。

语法如下:ex

参数

expression是必需的,该表达式返回上面的对象之一。

Visible属性可以设置为下面的常量之一。

a) xlSheetHidden ,其值为 0,表示隐藏对象,可以通过“格式”→“工作表”→“取消隐藏”菜单使对象重新可见,等同于设置为False。

b) xlSheetVisible 其值为 -1表示使对象重新可见,等同于设置为True。

c) xlSheetVeryHidden 其值为2表示隐藏对象,使该对象重新可见的唯一方法是将此属性设置为True或xlSheetVisible。

1 利用Visible属性,使禁用VBA时工作表无法有效显示

我们看如下代码:

Private sh As Worksheet

Private Sub Workbook_BeforeClose(Cancel As Boolean) '第21讲 如何做到如果禁用VBA将无法继续工作

Sheets("空白").Visible = True

For Each sh In T

If <> "空白" Then

= xlSheetVeryHidden

End If

Next

Ac

End Sub

Private Sub Workbook_Open() '第21讲 如何做到如果禁用VBA将无法继续工作

For Each sh In T

If <> "空白" Then

= xlSheetVisible

End If

Next

Sheets("空白").Visible = xlSheetVeryHidden

End Sub

代码截图

2 代码的讲解及实际测试效果

代码讲解:

1) 第2行到第10行代码是工作簿的BeforeClose事件过程,在工作簿关闭前隐藏除“空白”表以外的所有的工作表。

2) 第3行代码将“空白”表的Visible属性设置为True,使其可见。

3) 第4行到第8行代码使用For Each...Next语句遍历工作簿中所有的工作表,将除“空白”表以外的所有工作表的Visible属性设置为xlSheetVeryHidden,使之隐藏。

Visible属性设置为xlSheetVeryHidden后工作表不能通过“格式”→“工作表”→“取消隐藏”菜单来显示隐藏的工作表。

4) 第9行代码使用Save方法保存代码所在工作簿的更改,在关闭工作簿时不显示消息框。

5) 第10行到第18行代码是工作簿的Open事件过程,在打开工作簿时将除“空白”表以外的所有工作表的Visible属性设置为xlSheetVisible,取消隐藏。如果打开工作簿时禁用宏,则工作簿中除了“空白”表以外,其他的工作表还处于深度隐藏的状态,这样就达到强制用户启用宏的效果,当然这还需要VBA工程保护的配合。

代码的运行效果,禁用宏后在启用VBA代码后的工作表视图:

今日内容回向:

1 如何做到在禁用VBA代码时,视图只显示“空白”页。

2 xlSheetHidden 的值有几种?都有什么意义?

3 本节两段代码的意义是否掌握了?

本讲内容参考程序文件:VBA代码解决方案修订(1-48).xlsm

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

1.《【禁用宏】抱歉,如果禁用宏,你将无法工作》援引自互联网,旨在传递更多网络信息知识,仅代表作者本人观点,与本网站无关,侵删请联系页脚下方联系方式。

2.《【禁用宏】抱歉,如果禁用宏,你将无法工作》仅供读者参考,本网站未对该内容进行证实,对其原创性、真实性、完整性、及时性不作任何保证。

3.文章转载时请保留本站内容来源地址,https://www.lu-xu.com/gl/2485074.html

上一篇

【we战队比赛视频】LPL“老虎9万”受伤爆炸RNG进入S7 WE,失去了良好局面,后悔翻了过来。

下一篇

【保卫萝卜冒险模式攻略】新旅行新冒险防御萝卜3冒险模式通关技术

禁用宏专题之Excel VBA 常见技巧23-工作表的深度隐藏

禁用宏专题之Excel VBA 常见技巧23-工作表的深度隐藏

禁用宏相关介绍,使用VBA开发的工作簿文件与用户交往后,通常会在打开工作簿时启用宏。禁用宏时,除了使用“关闭工作簿”功能外,还可以隐藏所有包含数据的工作表。如果在打开工作簿时禁用宏,则只会显示空白工作表,从而达到强制...

【禁用宏】如何设置Excel文件安全模式,这里有说明,不要错过

【禁用宏】如何设置Excel文件安全模式,这里有说明,不要错过

禁用宏相关介绍,No.1 网络安全是重点内容。无论是生产企业还是国家事业,互联网已经成为生活不可分割的一部分。 于是,网络安全就显得十分重要,美国的互联网是世界最强的国家,面对网络安全依然无法避免发生事故。 面对网络...

【禁用宏】每次打开EXCEL总显示宏被禁用,让开启宏,两个原原因

【禁用宏】每次打开EXCEL总显示宏被禁用,让开启宏,两个原原因

禁用宏相关介绍,相信在公司工作的很多亲戚都遇到了问题。别人发来了excel文件。每次打开时,excel上面似乎都不能使用宏、宏是否启用、以及别人使用的按钮等一些功能,这让一些同事很为难。大卫亚设(David Asse...