批量解除Excel密码的VBA代码?求指出代码问题,修改代码

Neutrino♐️♑️ 2019-01-28 11:01:03
我现在要解决的问题是:我有很多excel文件在同一个文件夹里,文件都有一个相同的密码且我知道,我希望把这些密码都解除,让每个excel文件都变成直接可以打开的文件。excel文件里的sheet是没有密码的。我在百度知道看到一个代码,是对本地文件夹里的excel文件解密的,但是我按照它的操作没有成功,希望有高手能够帮我看看如何修改就能实现我的需求,不胜感激!!!

引用:https://zhidao.baidu.com/question/2117910715489312707.html
————————————————————————————————————————————————
Sub xx()
Dim pth, fn, i, j, n
pth = ThisWorkbook.Path & "\"
fn = Dir(pth & "*.xls")
Do While fn <> ""
If fn <> ThisWorkbook.Name Then
Application.Workbooks.Open pth & fn
n = Workbooks(fn).Sheets.Count
For j = 1 To n
Workbooks(fn).Sheets(j).Unprotect "TZHJTDWIVSBWYKU"
Next
Application.Workbooks(fn).Close True
End If
fn = Dir
Loop
End Sub
新建一个excel文件,Alt+F11打开VBE,新建一个模块,复制上面的代码,退出VBE,把excel文件保存到要解密的文件夹,执行宏xx
_______________________________________________________________________________________________________________________
...全文
1141 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
bonesoup 2019-02-15
  • 打赏
  • 举报
回复
Sub xx()
Dim pth, fn, i, j, n
pth = ThisWorkbook.Path & "\"
fn = Dir(pth & "*.xls")
Do While fn <> ""
If fn <> ThisWorkbook.Name Then
Application.Workbooks.Open pth & fn, , , , "工作薄密码"
Workbooks(fn).Unprotect "工作薄密码"
Application.Workbooks(fn).Close True
End If
fn = Dir
Loop
End Sub
脆皮大雪糕 2019-01-28
  • 打赏
  • 举报
回复
录制一个宏,然后修改一下,循环遍历所有文件就是了
脆皮大雪糕 2019-01-28
  • 打赏
  • 举报
回复
首先,你的代码是对 sheet的 Unprotect操作,而不是对 Workbook 的 Unprotect操作。具体的应该是 Workbook.Unprotect方法。 其次,Workbook.Unprotect 删除表或工作簿的保护。你要输入密码打开这个workbook,才能 Unprotect Application.Workbooks.Open pth & fn, Password:="TZHJTDWIVSBWYKU"
  • 打赏
  • 举报
回复
引用 1 楼 脆皮大雪糕 的回复:
录制一个宏,然后修改一下,循环遍历所有文件就是了


解除密码,是excel一开始的事情,所以不知道后面录制对前面解密有没有用,然后请问上面代码有问题吗?
一个小巧而又十分强大的Excel加载项(插件)---OBS.DLL,大小1M左右,却能突破微软的技术壁垒,打破Excel的常规应用模式,开辟了Excel的另类应用空间。加载后新增一个"OBS"工具条,适用于Excel2002及以上版本,推荐在Excel2002/2003中使用。 OBS.DLL的主要功能是制作和编辑OBS文档,一种类似TreeView控件的文档。换句话说,OBS.DLL将Excel表格变成了一个功能强大的超级TreeView控件!普通TreeView控件只能显示一列数据(仅一个字段),而OBS表格却可以显示更多的列(N个字段),而且每个字段都可以汇总(这一点又要比Excel自身的分类汇总更直观、简单),再配合VBA,可以让您轻松驾驭超灵无比的Excel! 当然,OBS.DLL还具备一些很有特色的功能,对Excel的功能来说,应该是一个很好的补充。如: 1、中文简繁互换:在简体中文和繁体中文之间进行转换。 2、进制转换:在二进制、八进制、十进制、十六进制之间相互转换。 3、人民币大小写互换:在Excel中,很多时候需要将小写的金额数字转换成大写,而Excel提供的函数转换出来的格式并不符合中国人的习惯,所以... 4、数字签名:对Excel表格中的内容进行签名保护,主要是防止提供者提供的内容被非法修改。可以用于Excel公文的电子签名,实现真正的无纸办公... 5、保存为图片文件:相当于Excel的照相机功能(有过之而无不及)。可以将Excel中的单元格区域、Shape对象、图片、图表等(甚至是组合形式)以gif、jpg、bmp等各式保存到磁盘中。 6、全功能批注----真正所见即所得的批注编辑器。 7、VB/VBA代码归纳与重写:对VB/VBA代码进行混淆,大大降低代码的可读性,是一种保护VB/VBA代码的很有效的方法。详细的注释说明和一目了然的名称将有助于设计阶段的调试和查错,但是代码一旦发布后,这些优点将会使黑客轻而易举地破解你的成果,呵呵,用这个吧,保证黑客对您的VB/VBA代码一点兴趣和胃口都没有!! 8、解除Excel文档的内部密码。很多时候,我们需要设置Excel表格/工作簿的保护密码,可是随着时间的推移,这些密码很可能遗忘了,怎么办?很着急啊!!!哈哈,用这个保证在2分钟之内解决问题(换个角度:不要再自欺欺人了,Excel的内部密码形同虚设)。 9、信息加密/解密。对Excel文档中的一些敏感信息进行加密处理,即使文档被破解了,里面的信息仍然很安全。可以说这个功能是对Excel安全的一个有力补充。 10、工程代码锁定解锁器。可以撤销ExcelVBA保护密码(对word、Access同样有效) 11、控制和保存功能。这个功能能满足我们不用记一个密码就能非常有效地保护我们的Excel文档,而且可以免除来自微软的威胁。 12、Cookie管理器。在信息时代,没有网络怎么可以?上网时间长了,就会发现在临时文件夹中挤满了cookies,不但占据磁盘空间,而且还可能泄露秘密。用“清理cookie”命令吧,又觉得有些没有必要删,否则下次还得再输一遍;一个一个删吧,东西太多,想都不能想。怎么办??用这个啊!!只要一次性设置要保留的cookie并选中“退出Excel时自动清理”即可。以后只要退出Excel,你的cookies目录中就不会再有其它乱七八糟的cookie了。 13、超级预览。可以根据当前的选择内容自动调整预览对象。如果选中的是单元格区域,就只预览你选中的区域;如果选中的是图表,则仅预览选中的图表;如果只是一个单元格,则自动显示分页符... ... 14、屏幕锁定。当我们需要临时离开电脑而又不想关闭Excel文档时(并不局限于Excel文档,也可以是其它,但前提是要运行Excel),可以启动这个功能,这样其他人就不可能看到您不希望他们看到的东西。 15、尝试打开忘记密码的文件。暴力破解Excel的打开密码,注意:这个仅对拥有密码设计方案的人有效。 16、Excel加载项/宏管理器。对当前Excel环境下的加载宏/加载项/VBA加载项进行列表,并可以查看相关属性、修改运行状态,甚至是一键破解。 17、Excel对象管理器,可以批量转换Excel中的对象(图片、Shape、图表等)到图片文件; 18、在Excel中播放背景音乐、定时执行特定的程序、整点报时,一定很惬意... 19、屏幕录像及捕捉。哦,这个功能很强大啊。可以截取屏幕图像、录制屏幕变化、图片格式转换、批量bmp转成AVI文件、AVI文件转成动画GIF文件、图片标注... ...强大的不行啦,赶快去看看吧。快捷键:Ctrl+Alt+SpaceBar 或者 Ctrl+左WinKey(微软左徽标键) 20、DLL神探,DLL的最大威胁就是注入到系统进程中,让人防不胜防... 21、一键恢复Excel的系统菜单。这个功能... ... 22、Excel版简易游戏。只是几个可以在Excel中玩的游戏... 23、计划横道图(甘特图)。偶觉得还是用Excel来做横道图最方便了... ... 24、偶将呆板的网络调查和网络投票移植到OBS.DLL中了,变被动为主动! ... ... 有兴趣的请访问:http://www.ChinaOBS.com 。本站热诚欢迎您的到来。

2,462

社区成员

发帖
与我相关
我的任务
社区描述
VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
社区管理员
  • VBA
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧