用简短的VBA代码解锁受保护的Excel工作表

在工作中,经常会收到这种禁止编辑和查阅公式的Excel表格。
在这里插入图片描述
如果希望【取消保护】,则会要求输入密码。

此时只需要在VBA编辑器里运行如下函数,即可解除全部工作表的编辑密码。

Sub UnprotectAllWorksheet()

Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
ws.Protect AllowFiltering:=True: ws.Unprotect
Next ws

End Sub

解除保护后效果如下:

在这里插入图片描述

另外需要吐槽的是,网上搜索到的另外一个常见的方法,其实并不能有效地解除保护。
因为这段代码是通过暴力枚举法,暴力尝试前11个字符仅包含字母"A"和字母"B"的密码,最后一个字符随机的12位长度密码。
例如它支持破解的密码包括:
AAAABBBBAAA5
AABAABBBBABa
BABBABBAABAx
但不能适应普通的随机密码。

错误代码截图如下:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值