首页 » office教程 » Excel教程

如何解除Excel VBA工程密码

Excel教程 2021-12-18

方法一

将你要解除的Excel文件关闭,另存为2003版格式(.xls),

如何解除Excel VBA工程密码

然后新建一个Excel文件,打开新建的这个Excel,按下alt+F11,打开VBA 界面,新建一个模块,

如图所示

如何解除Excel VBA工程密码

将代码复制到这个模块中,代码如下:

Private Sub VBAPassword() '你要解保护的Excel文件路径(把要解除的excel保存为2003-97 xls)
Filename = Application.GetOpenFilename("Excel文件(*.xls & *.xla & *.xlt),*.xls;*.xla;*.xlt", , "VBA解除")
If Dir(Filename) = "" Then
MsgBox "没找到相关文件,清重新设置。"
Exit Sub
Else
FileCopy Filename, Filename & ".bak" '备份文件。
End If
Dim GetData As String * 5
Open Filename For Binary As #1
Dim CMGs As Long
Dim DPBo As Long
For i = 1 To LOF(1)
Get #1, i, GetData
If GetData = "CMG=""" Then CMGs = i
If GetData = "[Host" Then DPBo = i - 2: Exit For
Next
If CMGs = 0 Then
MsgBox "请先对VBA编码设置一个保护密码...", 32, "提示"
Exit Sub
End If

Dim St As String * 2
Dim s20 As String * 1
'取得一个0D0A十六进制字串
Get #1, CMGs - 2, St
'取得一个20十六制字串
Get #1, DPBo + 16, s20
'替换加密部份机码
For i = CMGs To DPBo Step 2
Put #1, i, St
Next
'加入不配对符号
If (DPBo - CMGs) Mod 2 <> 0 Then
Put #1, DPBo + 1, s20
End If
MsgBox "文件解密成功......", 32, "提示"
Close #1
End Sub

点击运行,打开第一步另存为2003版格式的Excel表格即可。

如何解除Excel VBA工程密码

 

方法二

解除VBA查看密码

首先,如果文件格式是(.xslm),需要先打开Excel文件,另存为2003版格式(.xls),保存过程中如有弹出提示,直接点击确认即可。

如何解除Excel VBA工程密码

然后点击选中文件,单击右键打开方式选择使用记事本打开,还可以使用文本编辑器(我用的是NotePad++)打开这个文件。

如何解除Excel VBA工程密码

然后在文件里查找“DPB",把它改成“DPx”。注意大小写。(这个是重点)

如何解除Excel VBA工程密码

保存修改。然后用Excel重新打开这个文件。你会遇到一些错误,忽略它们。

如何解除Excel VBA工程密码

然后进入Excel的“开发工具”面板,选择“Visual Basic”。又会有一系列错误,忽略它们,直到VBA项目打开。

如何解除Excel VBA工程密码

这时候已经可以查看VBA代码了。

修改VBA密码

如果想改变甚至去除原来的密码,继续看。

从VBA编辑器的“工具”菜单,选择“VBA工程属性...“,然后转到”保护“面板。

在密码框中输入新密码。(即便你想去除原有密码,也必须先设置一个新密码,然后再按后面的步骤去掉这个密码。)

如何解除Excel VBA工程密码

保存VBA文件和Excel文件,关闭Excel。

重新启动Excel并重新打开这个文件,然后进入"开发工具"->"Visual Basic",会提示输入密码。输入你新设置的密码。

如何解除Excel VBA工程密码

 

然后回到VBA编辑器的“工具”->"VBA工程属性"->“保护”,去掉密码以及保护选项前面的标记

如何解除Excel VBA工程密码

最后大功告成,下次可以直接打开查看VBA工程。

如何解除Excel VBA工程密码


上一篇:Excel 如何设置文本格式下一篇:Excel工作表的基本操作(一)
程序园_程序员的世界 Copyright © 2020- www.580doc.com. Some Rights Reserved.