excel2013关于VBA密码破解的教程

excel2013关于VBA密码破解的教程,第1张

在 Excel 中可能有些重要数据需要修改,但遗憾的是忘记了密码。这个时候就需要进行对文件密码的破解。下面是我带来的关于excel2013关于VBA密码破解的教程,欢迎阅读!

excel2013关于VBA密码破解的教程

教程1:将你要破解的Excel文件关闭,切记一定要关闭呀!然后新建一个Excel文件

excel2013关于VBA密码破解的教程图1

教程2:打开新建的这个Excel,按下alt+F11,打开vb界面,新建一个模块,如图所示

excel2013关于VBA密码破解的教程图2

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

Private Sub VBAPassword() '你要解保护的Excel文件路径

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

excel2013关于VBA密码破解的教程图3

教程3:然后点击运行按钮,如图所示,绿色的小三角就是

excel2013关于VBA密码破解的教程图4

教程4:你会看到,打开了一个文件夹,找到我们要破解的这个文件,然后点击打开

excel2013关于VBA密码破解的教程图5

教程5:稍等几分钟你就会看到破解成功的提示了

excel2013关于VBA密码破解的教程图6

如果要查看别人的有密码保护的VBA代码,可使用此程序。使用方法:新建Excel工作簿, 打开VBA编辑器,新建一模块 ,复制以下代码。然后运行MoveProtect程序。运行过程中会出现提示,以指示要破解的文件路径和名称。被破解的文件一定是关闭状态的。

Sub MoveProtect()

Dim FileName As String

FileName = Application.GetOpenFilename_

("Excel文件(*.xls &*.xla),*.xls*.xla", , "VBA破解")

If FileName = CStr(False) Then

Exit Sub

Else

VBAPassword FileName, False ' 引用下面的自定义函数

End If

End Sub

Private Function VBAPassword(FileName As String, Optional Protect As Boolean = False)

If Dir(FileName) = "" Then

Exit Function

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 Function

End If If Protect = False Then

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, "提示"

Else

Dim MMs As String * 5

MMs = "DPB="""

Put #1, CMGs, MMs

MsgBox "对文件特殊加密成功......", 32, "提示"

End If

Close #1

End Function

所谓破解只是清除VBA密码,并不是真正的破解。

Excel是一个专门用于整理数据的电子表格,为了保障表格的安全,用户可以为文档进行加密,可以设置以下类型密码:打开密码、编辑密码、工作表密码、共享账簿密码以及VBA密码。VBA全称是VisualBasicforApplications,是微软开发出来在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。VBA是VisualBasic的一种宏语言,主要能用来扩展Windows的应用程式功能,特别是MicrosoftOffice软件,特别是Excel表格。另外,也可说VBA是一种应用程式视觉化的Basic脚本。实际上VBA是寄生于VB应用程序的版本,可以具备VBA的宏功能。VBA密码就是为变成语言设置访问权限。破解VBA密码有两种方法:1、使用宏代码,这种方法比较专业,不具有普遍的适用性;2、使用专业的第三方密码破解工具,这个可以广泛被使用,传播比较广泛的是AdvancedOfficePasswordRecovery,使用软件打开Excel文档,程序会自动开始破解VBA密码的 *** 作,一旦破解成功,用户可以更改Excel文档的VBA密码,重新获取权限。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/7812056.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-10
下一篇 2023-04-10

发表评论

登录后才能评论

评论列表(0条)

保存