excel 2007 vba与宏完全剖析_Excel怎么保护自己的劳动成果?强制用户启用宏,再加上这一步...

35d090917445a9a471d3002823eb87ee.png

知识改变命运,科技成就未来。

当Excel工作簿中含有VBA代码时,用户在使用时需要启用宏,否则工作簿的某些功能就会失效。或者是编辑的VBA代码含有定期删除指令,为了保证工作簿的安全性,和防止他人禁用宏造成知识产权法受到侵害,需要强制用户启用宏。看过以下三篇文章的小伙伴也提出同样的问题。

Excel科幻电影效果,文件倒计时销毁功能,网友直呼太科幻

Excel工作表打开一次后自动销毁文件,回收站中都找不到

Excel工作簿自动销毁功能,使用时间到期后自动删除文件

1830ca9fa05655872ebc33803e2d7cef.png

经过两天的深思熟虑终于找到解决问题办法。思路是通过编辑VBA代码,打开Excel工作簿后自动检测宏是否被启用,如果宏处于禁用状态,工作簿会自动隐藏关键数据所在的工作表,此处的隐藏属于深度隐藏,无法直接取消隐藏工作表。

5bb09261bf28c58a557edb2c9ac22b66.gif

步骤一:打开Excel工作簿后,再插入一个新的工作簿Sheet2用来存放关键数据,Sheet1作为提示工作簿,主要功能是提示用户必须强制启用宏和启用宏的方法,否则隐藏关键数据所在的工作表。

Excel在打开含有宏的工作簿时,会提示用户是否启用宏,如果没有做任何提示,此时就需要用户自己动手启用。启用宏的操作步骤依次是:文件→选项→信任中心→信任中心设置→宏设置→启用所有宏→确定。

7f7cd98386e2e7f0404597f217c2feed.png

步骤二:接下来就是编辑VBA代码,打开Visual Basic编辑器后,将以下代码复制粘贴到ThisWorkbook代码窗口中,最后对VBAProject进行加密处理,主要是保护VBA代码不被删除或更改,以保证整个工作簿的安全性。设置完成后关闭Visual Basic编辑器回到工作簿操作界面。

d3c718e278016ced5a887edd1af473ab.png

代码区域:

Option Explicit

Private Sub Workbook_BeforeClose(Cancel As Boolean)

Dim sh As Worksheet

Sheet1.Visible = True

For Each sh In Me.Worksheets

If UCase(sh.Name) <> "SHEET1" Then sh.Visible = xlSheetVeryHidden

Next sh

Me.Save

End Sub

Private Sub Workbook_Open()

Dim sh As Worksheet

For Each sh In Me.Worksheets

If UCase(sh.Name) <> "SHEET1" Then sh.Visible = True

Next sh

Sheet1.Visible = xlSheetVeryHidden

End Sub

32c06f7a17ffb5cf8a282d596073611a.png

步骤三:工作簿的存储也非常重要,需要将Excel工作簿另存为【*.xls】格式或【*.xlsm】格式,因为【*.xlsx】格式无法识别带有宏的工作表,保存后宏会自动清除。

需要注意的是,在宏禁用的情况下,默认隐藏的是除Sheet1工作表之外的其他工作表,请勿将重要数据存放在Sheet1工作表之中。当启用宏后,工作簿会自动隐藏Sheet1工作表。

a55b0e98c7364c49284b137260c825af.png

至此,Microsoft Excel强制用户启用宏的操作方法已经介绍完毕。如果对操作过程有些费解,请浏览查阅前三篇文章获取答案,也许会有不一样的效果。如果感兴趣可以结合前三篇文章的内容,制作属于自己的工作簿,相信您定会让他人大吃一惊。

动动手指点击关注和转发,让更多的人告别加班的烦恼,每天掌握一些科技小技巧,相信也会为您的工作和生活带来便捷。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/433721.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

用python画国旗的程序_用Python的Turtle模块绘制五星红旗

Turtle官方文档 turtle的基本操作 # 初始化屏幕 window turtle.Screen() # 新建turtle对象实例 import turtle aTurtle turtle.Turtle() # 海龟设置 aTurtle.hideturtle() # 隐藏箭头 aTurtle.speed(10) # 设置速度 # 前进后退&#xff0c;左转右转 aTurtle.fd(100) # 前进10…

丰田pcs可以关闭吗_丰田新款卡罗拉变化这么大 让老车主陷入沉思

【太平洋汽车网 导购频道】小胖是一名95后的汽车编辑&#xff0c;年纪轻轻又从事汽车编辑这一岗位&#xff0c;大家可能会觉得他肯定是一位充满热血、喜欢驾驶、热爱汽车的年轻人&#xff0c;那如果我告诉你小胖的座驾是一辆老卡罗拉(询底价|查参配)&#xff0c;你还会觉得小胖…

python从小白到大牛pdf 下载 资源共享_Kotlin从小白到大牛 (关东升著) 中文pdf高清版[12MB]...

本书是一本Kotlin语言学习立体教程&#xff0c;主要内容包括&#xff1a;Kotlin语法基础、Kotlin编码规范、数据类型、字符串、运算符、程序流程控制、函数、面向对象基础、继承与多态、抽象类与接口、高阶函数、Lambda表达式、数组、集合、函数式编程API、异常处理、线程、协程…

MySQL——基本配置

一、新建配置文件 在MySQL的安装目录下D:\Mysql\mysql-8.0.28-winx64\bin中新建一个文本文件&#xff0c;文件内容如下&#xff1a; [mysql] default-character-setutf8[mysqld] character-set-serverutf8 default-storage-engineINNODB sql_modeSTRICT_TRANS_TABLES,NO_ZERO_…

在mac上用文本编辑器写python_Mac系统Python解释器、PyCharm编辑器安装及使用方法详解...

『环境配置』- 工欲善其事&#xff0c;必先利其器 视频讲解教程&#xff1a;[Mac系统Python开发环境配置教程详解&#xff08;Python技术客栈&#xff09;](https://www.bilibili.com/video/av80761677)【开发环境配置】Mac系统Python开发环境配置教程详解&#xff08;Python技…

hdu 2149 巴什博弈

http://acm.hdu.edu.cn/showproblem.php?pid2149 分析&#xff1a;就是巴什博弈的概念。 题目要求&#xff1a;对于每组数据&#xff0c;在一行里按递增的顺序输出Lele第一次可以加的价。两个数据之间用空格隔开。如果Lele在第一次无论如何出价都无法买到这块土地&#xff0c;…

MySQL——数据库和表的增删改查

1、DDL操作数据库 ①查询 SHOW DATABASES;②创建 创建数据库 CREATE DATABASE 数据库名称; 创建数据库(判断&#xff0c;如果则创建) CREATE DATABASE IF NOT EXISTS 数据库名称;③删除 删除数据库 DROP DATABASE 数据库名称; 删除数据库(判断&#xff0c;如果存在则删除) DRO…

pc模式 华为mate30_号称“重构想象”的华为Mate30系列,到底有多颠覆?一睹为快...

9月19日迎来了华为全球发布会&#xff0c;和9月11日的苹果新品发布会时间挨得非常近&#xff0c;大家感受到了什么吗&#xff1f;华为Mate30系列于北京时间9月19日晚上8点在慕尼黑正式亮相了&#xff0c;以“重构想象”为主题&#xff0c;发布了4款新机&#xff1a;Mate30、Mat…

python数据分析师书籍_如何自学成为数据分析师

展开全部 第1本《谁说菜2113鸟不会数据5261分析入门篇》 很有趣的数据分析书&#xff01;基本看过就能明白4102&#xff0c;以小说的1653形式讲解&#xff0c;很有代入感。包含了数据分析的结构化思维、数据处理技巧、数据展现的技术&#xff0c;很能帮我们提升职场竞争能力。找…

Java进阶07 嵌套类

作者&#xff1a;Vamei 出处&#xff1a;http://www.cnblogs.com/vamei 欢迎转载&#xff0c;也请保留这段声明。谢谢&#xff01; 到现在为止&#xff0c;我们都是在Java文件中直接定义类。这样的类出现在包(package)的级别上。Java允许类的嵌套定义。 这里将讲解如何在一个类…

MySQL笔记——DQL查询数据

DQL查询包括以下这些内容&#xff1a; • 基础查询 • 条件查询(WHERE) • 分组查询(GROUP BY) • 排序查询(ORDER BY) • 分页查询(LIMIT)(一)、基础查询 1、查询多个字段 SELECT 字段列表 FROM 表名; SELECT * FROM 表名; 当前表中数据如下&#xff1a; 2、去除重复记录 …

c++两个vector合并_数据结构——算法初步(4)——合并排序算法

&#xfeff;从之前的学习可以看到&#xff0c;对大型vectory要求的排序&#xff0c;选择排序算法显然不符合要求&#xff0c;因为运行时间与输入问题规模大小的平方成比例增加&#xff0c;对于以线性顺序处理向量的元素的大多数排序算法也是如此。 所以要采用不同的方法来开发…

asterisk 互联

如上图所示&#xff0c;两个sip客户端分别注册在A,B两个asterisk服务器下&#xff0c;让A和B通过各自的asterisk服务器来相互通信。 xlite A的账号为2001&#xff0c;xlite B的账号为5001 asterisk A的sip.conf如下配置&#xff1a; [general] contextunauthenticated allow…

[活动通知]Nanjing GDG 2013年4月活动

致各位亲爱的 Google 技术爱好者 很高兴的通知各位朋友&#xff0c;Nanjing GDG 将在本周日 (04/21) 举办我们 Nanjing GDG 的 4月份活动&#xff0c;热烈欢迎大家报名参加。 主题&#xff1a;利用开放社区和代码库来构建 Android 应用 时间&#xff1a; 4月21 日 (周日) 下午 …

MySQL笔记——外键约束和表关系(一对一,多对一,多对多)

一、外键约束 概念&#xff1a;外键用来让两个表的数据之间建立链接&#xff0c;保证数据的一致性和完整性。语法&#xff1a;&#xff08;1&#xff09;添加约束-- 创建表是添加外键约束CREATE TABLE 表名(列名 数据类型,…[CONSTRAINT] [外键名称] FOREIGN KEY(外键列名) REF…

仿个人税务 app html5_【注意】你下载的可能是个假的个税App

新个税法从1月初开始实施。国家税务总局推出“个人所得税”APP&#xff0c;方便纳税人线上填报资料进行专项抵扣。几天来&#xff0c;这款APP的下载量和注册量大幅增长。随之而来的是&#xff0c;很多商业公司制作的各类“个税”APP也成为热门。这其中有不少纯属蹭热点&#xf…

MySQL笔记——多表查询

多表查询不能使用 SELECT * from emp, dept; 会产生笛卡尔积。 笛卡尔积&#xff0c;有A&#xff0c;B两个集合&#xff0c;A中有5条信息&#xff0c;B中有4条信息&#xff0c;那么查询结果就是5*420条一、内连接查询 -- 隐式内连接SELECT 字段列表 FROM 表1,表2,… WHERE 条件…

遇见王沥川的人生感悟_23岁酱油泡饭默默无闻,31岁逆袭人生,王彦霖有何魅力?...

文/小白说娱S姐 原创精品&#xff0c;请勿转载如果兜里只剩下1块钱&#xff0c;生活所迫你会怎样过&#xff1f;王彦霖23岁刚毕业熬过了1元危机&#xff0c;他永远都不会想到当年咬牙坚持熬成就了如今的综艺诸葛。《元气满满的哥哥》连播六期多次排名第一&#xff0c;成为芒果台…

antd vue form 手动校验_参与《开课吧》vue训练营笔记(Day1)

大神说的目标&#xff1a;Vue 挑战20k组件间通信component 官网 详解组件间的传递方式&#xff1a;父传子 直接属性传递子传父 this.$emit 时间传递兄弟组件 利用父组件搭桥组件和子孙 provide / inject子孙 -> 祖先 this.$dispatch 或provide 获取组件元素实例$listeners $…

MySQL笔记——打开日志

在my.ini文件中输入如下命令&#xff1a;log_outputFILE general_logon general_log_file"D:\\SoftwareTools\\Mysql\\mysqllog\\mysql.log" slow_query_logon long_query_time 2 slow_query_log_file"D:\\SoftwareTools\\Mysql\\mysqllog\\mysql_slow.log"…