ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 5599|回复: 2

求最牛的自杀功能

[复制链接]

TA的精华主题

TA的得分主题

发表于 2013-11-16 14:45 | 显示全部楼层 |阅读模式
在此先谢谢您,愿大家工作爱情双喜临门,新朋老友心心相印,财运和你纠缠不清,福运和你形影不分。祝你吉祥之年事事如意,步步高升。


帮忙写一段,可以打开3次后就要输入密码,输入密码错误时自杀。谢谢!(能自动加载宏就更加好了{:soso_e102:}




制作带自杀功能的工作簿_Excel VBA实战技巧精粹03

http://club.excelhome.net/thread-1038797-1-1.html




说明:格式中别用自动换行,要不会报错误!!!
玩转excel,制作带自杀功能的电子表格,
新建一个电子表格文件,按下ALT+F11,打开VB编辑器,双击左侧工程选项卡中的thisworkbook,打开代码窗口,将下列代码复制上去,其中“3”是可修改的参数(即打开一定的次数后表格自动消失),回到EXCEL,点击插入->名称->定义,名称定义为opentimes,引用位置=0,再回到代码编辑区,点一下第二段代码任意位置,按下F5,运行该段代码以隐藏名称名,再次回到定义名称选项卡,则opentimes隐藏不可见,保存文件,就可在工作表中编辑保密文件啦。


Sub readopentimes()
Dim otimes As Integer
otimes = Evaluate(ThisWorkbook.Names("opentimes").RefersTo)
otimes = otimes + 1
If otimes > 3 Then
     Call killthisworkbook
Else
     ThisWorkbook.Names("opentimes").RefersTo = "=" & otimes
End If
End Sub




Sub hidenames()
ThisWorkbook.Names("opentimes").Visible = False
End Sub


Private Sub Workbook_Open()
Call readopentimes
End Sub


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

(按以上方法试过不行不知道为什么,我用的是2010版本)

TA的精华主题

TA的得分主题

发表于 2013-12-6 08:42 | 显示全部楼层
可行,
在 2007 里面,那个名称是在 “公式”选项卡下。
编辑方式,打开3次后自杀。
在保存的时候,文件类型选择“启用宏的工作薄”就直接启用宏啦。

TA的精华主题

TA的得分主题

发表于 2016-12-20 12:04 | 显示全部楼层
这个试了,是成功的。工作簿删除了,工作表上的数据就丢失了。

我希望是:工作簿里的VBA代码清空,工作簿保留,这样工作表上的数据 不会丢失。
这样如何实现啊?
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-25 20:55 , Processed in 0.028832 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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