有个学员问我,说公司有个高手离职了,他留下的带VBA的工作簿,在打开的时候只要一启用宏,这个工作簿瞬间就没有了,就是莫名其妙地就消失了。“难道Excel文件还能自杀啊?!” 恩,确实有这么回事。这个高手估计在Excel文件的VBA里编制了“自杀”代码。

那怎么破呢?其实很简单,打开工作簿的时候,不要启用宏,然后Alt+F11,进入vba代码编辑器,找到自杀代码删除掉就可以了。

当然有一种高手,通过使用宏表4.0功能加上宏表函数设置也能成功的实现,必须启用宏,否则文件不让完全打开。这个功能15年前在一个工作簿里看见过,最近研究了下,也成功实现了,暂时不深聊,略过。

下面就让大家见见这段代码。最早自杀代码来自EH论坛上某个高手。

百度搜索“vba 自杀代码 ”,能搜到一堆这方面的文章资料。

打开网易新闻 查看精彩图片

Sub Killme() With ThisWorkbook .Saved = True .ChangeFileAccess xlReadOnly Kill .FullName .Close End With End Sub

这段代码需要人为去启用,不会自动执行。就是在视图或开发工具里,找到宏,查看宏,然后点开“killme”宏,执行,就立即把当前工作簿删除掉了。

打开网易新闻 查看精彩图片

当然还可以把代码改下,改成一打开工作簿只要启用宏,代码就执行自杀,不过也可以设定日期,比如超过某个日子,代码才会执行自杀动作。当然还可以编制其他的判断和规则,具体各位去想去修改了。代码修改后如下:

Private Sub Workbook_open() If Date >= #12/8/2017# Then Application.DisplayAlerts = False MsgBox "啊哈,我要走了,逃离这个电脑控制的世界。别找我,你也找不到我!", Title:="严重抗议!" With ThisWorkbook .Saved = True .ChangeFileAccess xlReadOnly Kill .FullName .Close End With Else: Exit Sub End If End Sub

这里的日期可以根据你的需要调整,比如你把代码里的日期由2017年12月8日改为2017年10月28日。代码要写成#10/28/2017#这样。那么因为今天的日期是2017年10月30日,这个工作簿打开后宏启用后,立即就会删除掉当前excel工作簿文件。

打开网易新闻 查看精彩图片

最后说一个更高级的,就是根据你打开工作簿的次数来判断是否删除。

如果你在代码里限制了次数为10次,那么当你打开10次后,vba会执行自杀动作删除掉当前的excel工作簿。

Private Sub Workbook_Open() Dim 计数器 As Long, 总次数 As Long, 已使用 已使用 = GetSetting("xh", "yuji", "使用次数", "") If 已使用 = "" Then 总次数 = 10 '限制当前工作簿被打开使用10次 MsgBox "本工作簿只能被使用" & 总次数 & "次" & vbCrLf & "超过次数后将自动删除!", vbExclamation SaveSetting "xh", "yuji", "使用次数", 总次数 Else 计数器 = Val(已使用) - 1 MsgBox "您还能使用" & 计数器 & "次,请及时注册!", vbExclamation SaveSetting "xh", "yuji", "使用次数", 计数器 If 计数器 <= 0 Then DeleteSetting "xh", "yuji", "使用次数" killme End If End If End Sub Public Sub killme() Application.DisplayAlerts = False ActiveWorkbook.ChangeFileAccess xlReadOnly Kill ActiveWorkbook.FullName ThisWorkbook.Close False End Sub

打开网易新闻 查看精彩图片

更多精彩!

尽在《Excel+PPT+Word小白变大神[520节]》

打开网易新闻 查看精彩图片

洞悉Excel底层逻辑的框架完整

PPT/Word案例深入浅出、超越99.99%的同类课程

案例丰富,全网最实战的课程

office三剑客,一课顶万课,不用选择,不用纠结

职场高效技能,一套课程全搞定

你就是下一个气势恢宏的牛人高手大神

你开不开始,都已经晚了很久,因为很多人已经学了50个月了

最后,推荐一个课程,收费的!永久有效,一网打尽Excel、PPT和Word的职场牛擦技能!平均每节不足1元钱。

只要您坚持学6个月到12个月,我一定确保您成为这个领域里的高手,顶尖高手不能确保,但睥睨周围同事横扫方圆99.99%的职场一流高手,我还是能确保的!

那么这套王牌的课程就是,

Excel+PPT修炼营Office小白变高手

http://study.163.com/course/courseMain.htm?courseId=1106004

点击阅读原文,打开购买链接,一次购买课程,享受终生辅导,李则见老师大部分情况下都直接回答你关于课程本身的所有问题,我微信号change12365

打开网易新闻 查看精彩图片

推荐这套好网课

品质之选,精品之作

《520节-Excel+PPT+Word小白变大神》

打开网易新闻 查看精彩图片

本次大促力度很大,还没购买的学员朋友,

给您超值惊喜,只此一次,绝不再有

我们会给您很多超越期待的回报和福利,史无前例的!

送Excel网课,送211套精品PPT模板!

送优惠券抵扣!你还想怎样?火速来!

最重要的是,学完此课程,升职加薪,绝对可以到来!

完爆99%的Office网课的520节在线视频课程

福利惊喜,喜出望外

一次购买,永久有效

辅导答疑,长期陪伴

系统深入,深入浅出

高手大神,承诺必达

史无前例,鸿篇巨制

千山万水,独此一家

宣传营销,没有花招

网课无数,学我不悔

超值视频,一套封神

技能宝典,必入囊中

正本清源,登峰捷径

购买前可以咨询李则见老师,微信号在上面

已有7400多人加入学习

而你却一直犹豫要不要学习

高下立见

未来就在某个瞬间被决定了

你的思维限制了你的未来