实现方法:将文件的“ChangeFileAccess”属性设置为只读,即“xlReadOnly”,然后通过 Kill 代码删除文件即可。不过为了确保用户可以正常地查看文件一次,需要将代码写入工作簿事件“Workbook_BeforeClose”中
第一步,新建一个工作簿(也可以打开已经存在的工作簿),按 Alt+F11 组合键打开 VBE 窗口
第二步,使用 Ctrl+R 组合键打开工程资源管理器,双击“Thisworkbook”进入工作簿事件代码窗口,然后输入一下代码:
[cc lang=”vb”]
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ActiveWorkbook.ChangeFileAccess xlReadOnly
Kill ActiveWorkbook.FullName
Application.Quit
End Sub
[/cc]
第三步,保存工作簿,但不能关闭 Excel。然后进入文件夹中将文件复制两份,并分别命名为“A.xlsm”和“B.xlsm”
第四步,关闭 Excel,发现当前文件会自动删除,且不经过回收站
最终结果:打开“B.xls”,然后关闭,“B.xls”也立即自我销毁。此时将“A.xls”发给客户即可。
经验证 2003-2016 版本有效