体验零代码搭建

excel撤销工作表保护密码忘记了怎么办

网友投稿  ·  2023-04-28 01:04  ·  在线excel  ·  阅读 4403


Excel是许多职场人士常用的烦恼之源,学习相关技巧需耗费大量时间。简道云作为一款办公神器,能很好地替代Excel。它是一个在线表单和数据管理工具,支持PC端和手机微信浏览器操作。除此之外,简道云还能辅助企业进行流程审批、财务报销、人事管理等业务管理,满足不同需求。

做数据分析的人都知道,原始数据的正确性是非常重要的,常常会因为一个数据的错误,导致结果发生很大的偏差。 因此在工作表中将原始数据输入完成并校对后,为了防止误操作或是被他人随意复制,都会选择将这些数据进行保护。但随着现代生活节奏的加快,再加上使用密码的地方太多,因此忘记密码的事情也是常有发生。当辛辛苦苦做的一份工作表因为忘记密码再也不能进行修改时,是不是感觉很郁闷呢? 这时该怎么办呢?重做一份吗?其

excel撤销工作表保护密码忘记了怎么办

excel撤销工作表保护密码忘记了怎么办

做数据分析的人都知道,原始数据的正确性是非常重要的,常常会因为一个数据的错误,导致结果发生很大的偏差。

因此在工作表中将原始数据输入完成并校对后,为了防止误操作或是被他人随意复制,都会选择将这些数据进行保护。但随着现代生活节奏的加快,再加上使用密码的地方太多,因此忘记密码的事情也是常有发生。当辛辛苦苦做的一份工作表因为忘记密码再也不能进行修改时,是不是感觉很郁闷呢?

这时该怎么办呢?重做一份吗?其实不用这么麻烦,下面我就为大家分享两种常用的清除工作表保护密码的方法。

利用VBA清除

1、点击菜单栏中的“开发工具”,选择录制宏,录制一个名为“清除工作表保护密码”的宏文件(可以根据自己的习惯命名该宏文件)。

2、再次点击菜单栏中的“开发工具”,选择“宏”,打开宏对话框,“宏名”选择刚刚新建的宏文件,然后点击“编辑”,打开宏(VBA)编辑窗口。

3、在宏(VBA)编辑窗口的左侧依次选择“VBAProject PERSONAL,XLSB”→“模块”→“模块2”后,将右侧的代码窗口中的原有内容删除后,把以下代码复制后粘贴在代码窗口中保存。

4、再次点击菜单栏中的“开发工具”,选择“宏”,打开宏对话框,“宏名”选择刚刚新建的宏文件,然后点击“执行”或“单步执行”,等程序运行完成后工作表保护密码就清除了。(提示:程序运行时有点卡,如果电脑配置低就选择单步执行,效果是一样的)

VBA代码如下:

Public Sub 工作表保护密码破解()

Const HUANHANG As String = vbNewLine & vbNewLine

Const MINGCHEN As String = "清除工作表保护密码"

Const JINGGAO As String = "该工作簿中的工作表密码保护已全部清除!!" & HUANHANG & "请记得另保存" _

& HUANHANG & "注意:不要用在不当地方,要尊重他人的劳动成果!"

Const TISHI1 As String = "该文件工作表中没有加密"

Const TISHI2 As String = "该文件工作表中没有加密2"

Const KSPJ As String = "解密需花费一定时间,请耐心等候!" & HUANHANG & "按确定开始清除!"

Const FXMM1 As String = "密码重新组合为:" & HUANHANG & "$$" & HUANHANG & _

"如果该文件工作表有不同密码,将搜索下一组密码并修改清除"

Const FXMM2 As String = "密码重新组合为:" & HUANHANG & "$$" & HUANHANG & _

"如果该文件工作表有不同密码,将搜索下一组密码并解除"

Const MSGONLYONE As String = "确保为唯一的?"

Dim w1 As Worksheet, w2 As Worksheet

Dim i As Integer, j As Integer, k As Integer, l As Integer

Dim m As Integer, n As Integer, i1 As Integer, i2 As Integer

Dim i3 As Integer, i4 As Integer, i5 As Integer, i6 As Integer

Dim PWord1 As String

Dim ShTag As Boolean, WinTag As Boolean

Application.ScreenUpdating = False

With ActiveWorkbook

WinTag = .ProtectStructure Or .ProtectWindows

End With

ShTag = False

For Each w1 In Worksheets

ShTag = ShTag Or w1.ProtectContents

Next w1

If Not ShTag And Not WinTag Then

MsgBox TISHI1, vb***mation, MINGCHEN

Exit Sub

End If

MsgBox KSPJ, vb***mation, MINGCHEN

If Not WinTag Then

Else

On Error Resume Next

Do 'dummy do loop

For i = 65 To 66: For j = 65 To 66: For k = 65 To 66

For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66

For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66

For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126

With ActiveWorkbook

.Unprotect Chr(i) & Chr(j) & Chr(k) & _

Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & _

Chr(i3) & Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)

If .ProtectStructure = False And _

.ProtectWindows = False Then

PWord1 = Chr(i) & Chr(j) & Chr(k) & Chr(l) & _

Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _

Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)

MsgBox Application.Substitute(FXMM1, _

"$$", PWord1), vb***mation, MINGCHEN

Exit Do 'Bypass all for...nexts

End If

End With

Next: Next: Next: Next: Next: Next

Next: Next: Next: Next: Next: Next

Loop Until True

On Error GoTo 0

End If

If WinTag And Not ShTag Then

MsgBox MSGONLYONE, vb***mation, MINGCHEN

Exit Sub

End If

On Error Resume Next

For Each w1 In Worksheets

'Attempt clearance with PWord1

w1.Unprotect PWord1

Next w1

On Error GoTo 0

ShTag = False

For Each w1 In Worksheets

'Checks for all clear ShTag triggered to 1 if not.

ShTag = ShTag Or w1.ProtectContents

Next w1

If ShTag Then

For Each w1 In Worksheets

With w1

If .ProtectContents Then

On Error Resume Next

Do 'Dummy do loop

For i = 65 To 66: For j = 65 To 66: For k = 65 To 66

For l = 65 To 66: For m = 65 To 66: For i1 = 65 To 66

For i2 = 65 To 66: For i3 = 65 To 66: For i4 = 65 To 66

For i5 = 65 To 66: For i6 = 65 To 66: For n = 32 To 126

.Unprotect Chr(i) & Chr(j) & Chr(k) & _

Chr(l) & Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _

Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)

If Not .ProtectContents Then

PWord1 = Chr(i) & Chr(j) & Chr(k) & Chr(l) & _

Chr(m) & Chr(i1) & Chr(i2) & Chr(i3) & _

Chr(i4) & Chr(i5) & Chr(i6) & Chr(n)

MsgBox Application.Substitute(FXMM2, _

"$$", PWord1), vb***mation, MINGCHEN

'leverage finding Pword by trying on other sheets

For Each w2 In Worksheets

w2.Unprotect PWord1

Next w2

Exit Do 'Bypass all for...nexts

End If

Next: Next: Next: Next: Next: Next

Next: Next: Next: Next: Next: Next

Loop Until True

On Error GoTo 0

End If

End With

Next w1

End If

MsgBox JINGGAO, vb***mation, MINGCHEN

End Sub

excel撤销工作表保护密码忘记了怎么办的***:

本地下载


excel 如何批量合并相同内容单元格 << 上一篇
2023-04-28 01:04
excel表格对象是什么意思
2023-04-28 01:04
下一篇 >>

相关推荐