发布时间:2023-12-01 12:30:57
首先,如果文件格式是(.xslm),需要先打开Excel文件,另存为2003版格式(.xls)。
然后用普通的文本编辑器(我用的是NotePad++)打开这个文件,注意文件类型选“所有文件”。
然后在文件里查找“DPB",把它改成“DPx”。注意大小写。(这个是重点)
保存修改。然后用Excel重新打开这个文件。你会遇到一些错误,忽略它们。
然后进入Excel的“开发工具”面板,选择“Visual Basic”。又会有一系列错误,忽略它们,直到VBA项目打开。
这时候你已经可以查看VBA代码了。如果想改变甚至去除原来的密码,继续看。
从VBA编辑器的“工具”菜单,选择“VBA工程属性...“,然后转到”保护“面板。
在密码框中输入新密码。(即便你想去除原有密码,也必须先设置一个新密码,然后再按后面的步骤去掉这个密码。)
保存VBA文件和Excel文件,关闭Excel。
重新启动Excel并重新打开这个文件,然后进入"开发工具"->"Visual Basic",会提示输入密码。输入你新设置的密码。
然后回到VBA编辑器的“工具”->"VBA工程属性"->“保护”,去掉密码以及保护选项前面的标记
最后大功告成,也不用什么其他的软件。
下面是第二种方法:
vba去除法:
Sub 撤消工作表密码保护()
Dim wks As Worksheet
Dim i As Integer, j As Integer, k As Integer
Dim l As Integer, m As Integer, n As Integer
Dim o As Integer, p As Integer, q As Integer
Dim r As Integer, s As Integer, t As Integer
On Error Resume Next
For Each wks In Worksheets
with wks
If .ProtectContents Then
Do
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 n = 65 To 66
For o = 65 To 66: For p = 65 To 66: For q = 65 To 66
For r = 65 To 66: For s = 65 To 66: For t = 32 To 126
.Unprotect Chr(i) & Chr(j) & Chr(k) & Chr(l) & Chr(m) & Chr(n) & _
Chr(o) & Chr(p) & Chr(q) & Chr(r) & Chr(s) & Chr(t)
If .ProtectContents = False Then
MsgBox "密码已找到!密码是:" & Chr(i) & Chr(j) & Chr(k) & Chr(l) & Chr(m) & Chr(n) & _
Chr(o) & Chr(p) & Chr(q) & Chr(r) & Chr(s) & Chr(t)
Exit Do
End If
Next: Next: Next: Next: Next: Next: Next: Next: Next: Next: Next: Next
Loop Until True
End If
End With
Next wks
End Sub