关灯

[VBA] 限制Excel数据使用时间,到期自动销毁

[复制链接] [查看百度是否已收录此帖]
李海Blog 发表于 2021-9-10 14:42:47 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
 

本帖子中包含更多资源!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
Hello,大家好,今天跟大家分享下我们如何在Excel中实现,数据到期后自动消失的效果,在这里跟大家分享2种解决方法,一种是利用vba代码,另一种是利用条件格式,它们的操作也都非常简单,对照操作都可以设置成功,下面就让我们来学习下吧

一、VBA代码

首先我们需要复制下方的代码,然后点击【开发工具】找到【Visual Basic】在跳出的界面中我们双击最下方的【ThisWorkbook】,然后将代码直接粘贴在右侧的空白区域中,然后将这个界面关闭掉即可,至此就设置完毕了
  1. Private Sub Workbook_Open()

  2. Application.DisplayAlerts = False

  3. If Date = "2021/9/10" Then Sheets("sheet2").Delete

  4. Application.DisplayAlerts = Tru

  5. End Sub
复制代码
640.gif
这个代码的作用是将于2021年9月10号删除sheet2这个工作表。需要注意的是sheet2是VB界面中的名称,也就是工作表最原始的名称。如下图,我们可以看到Sheet2(销毁数据),所以在这里才会在Sheets("sheet2").Delete这行代码中出现sheet2,而不是【销毁数据】这个工作表名称。至于数据何时消失,我们只需要更改2021/9/10这个日期的值即可。


最后需要注意的是我们需要将文件另存为可以保存宏代码的格式,一般是另存为【xlsm】格式。这个方法也有一定的缺陷,现在很多公司在安全策略上都已经禁止电脑运行宏,如果存在这样的情况,文件有打不开的可能性。

二、条件格式法

条件格式这个方法相对于VBA,它并不是将数据删除了,而是为数据设置了格式,将其看不到罢了,因为数据还存在,所以我们需要对单工作表设置保护,防止数据到期后还能继续使用。

条件格式的特点是:当条件成立就运行我们设置的格式,条件不成立就不做任何更改。所以条件格式能否成功的关键就是条件如何设置。

首先我们选择需要设置的数据区域。然后找到【条件格式】选择【新建规则】点击【使用公式确定要设置的格式】随后在下方将公式设置为:=TODAY()>44449,然后点击【格式】在【数字】中找到【自定义】将类型设置为;;;需要注意的是这3个分号,需要在英文输入法下输入。

在这里today函数的作用是获取当天的日期,44449就是2021/9/10对应的数值,这个函数的意思就是:今天的时间大于2021年9月10号就代表条件成立,运行我们设置的格式。在这里我们将格式设置为了3个分号,这样的话单元格就会不显示任何内容,但是这些数据其实还是存在的,点击数据的时候,在编辑栏是可以看到数据的,所以紧接着我们就需要为表格设置保护了。

这个就比较简单了,我们只需要选择点击点击【审阅】找到【工作表保护】将【选定锁定单元格】与【选定解除锁定的单元格】的对勾去掉,然后设置一个密码,这样的话就无法选中单元格,无法选中单元格也就不能在编辑栏中看到数据了,同样也无法复制数据了,至此设置完毕。

上一篇:Indirect的使用方法(入门+初级篇)
下一篇:Choose函数都不会,你的Excel白学了!
零基础学习网站建设,上李海Blog就够了!你与成功只差添加一个好友:微信18298346873
 
*滑块验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 推广达人

    积极宣传本站,为本站带来更多注册会员
  • 宣传达人

    积极宣传本站,为本站带来更多的用户访问量
  • 突出贡献

    长期对论坛的繁荣而不断努力,或多次提出建设性意见
  • 优秀版主

    活跃且尽责职守的版主
  • 荣誉管理

    曾经为论坛做出突出贡献目前已离职的版主
  • 论坛元老

    为论坛做出突出贡献的会员

9关注

2粉丝

4420帖子

排行榜

Archiver|百度统计|手机版|李海博客 ( 陇ICP备15000550号-3 )|

GMT+8, 2021-10-28 02:30 , Processed in 0.160159 second(s), 35 queries .

技术支持:李海   Tel/WeChat:18298346873

© 2013-2021 www.lihaiblog.cn

快速回复 返回顶部 返回列表