嘻皮客娱乐学习网

标题: Excel 已知VBA工程密码,用代码实现自动解密的方法 [打印本页]

作者: xipick    时间: 2017-2-8 16:28
标题: Excel 已知VBA工程密码,用代码实现自动解密的方法
  已知VBA工程密码为“123”,用代码实现自动解密VBA工程的方法

代码一,需要引用Microsoft Visual Basic For Application Extensibility 5.3


  1. Sub OpenVBPrjWithPassword()
  2. '引用 Microsoft Visual Basic For Application Extensibility 5.3
  3. Dim strPassWord As String
  4. '关闭VBE主窗口
  5. Application.VBE.MainWindow.Visible = False
  6. strPassWord = "123" '密码字符串
  7. '判断是否设置了工程保护,使用密码打开工程
  8. If ActiveWorkbook.VBProject.Protection = vbext_pp_locked Then
  9. Application.VBE.CommandBars.FindControl(ID:=2578).Execute
  10. SendKeys strPassWord & "{ENTER}{TAB}{ENTER}"
  11. DoEvents '更新工程状态
  12. End If
  13. '要执行其它的操作….
  14. '.....
  15. End Sub
复制代码

代码二,不需要引用

  1. Sub OpenVBPrjWithPassword()
  2. Dim strPassWord As String
  3. '关闭VBE主窗口
  4. Application.VBE.MainWindow.Visible = False
  5. strPassWord = "123" '密码字符串
  6. '判断是否设置了工程保护,使用密码打开工程
  7. If ActiveWorkbook.VBProject.Protection = 1 Then
  8. Application.VBE.CommandBars.FindControl(ID:=2578).Execute
  9. SendKeys strPassWord & "{ENTER}{TAB}{ENTER}"
  10. DoEvents '更新工程状态
  11. End If
  12. '要执行其它的操作….
  13. '.....
  14. End Sub
复制代码










欢迎光临 嘻皮客娱乐学习网 (http://www.xipick.com/) Powered by Discuz! X3.3