VBA打开密码保护的VB代码并删除密码

2016-01-08 00:39 阅读 256 次 评论关闭

Sub UnProtectVBProject()
    '程式說明:利用SendKey解除VBAProject密碼
    '注意事項:執行本程式需要在Excel視窗,不能在VBE視窗
    Dim vbProj As VBProject
    '解除vbe密碼
    Set vbProj = ThisWorkbook.VBProject
    Application.ScreenUpdating = False
    If vbProj.Protection = 1 Then                '判斷vbp是否保護
        Application.SendKeys "%{F11}", True    'Alt + F11 切換到VBA視窗
        Application.SendKeys "%T", True  'ALT + T   工具(繁體中文是(T))
        Application.SendKeys "e", True   '工具(T)-VBproject屬性(E)
        myPW = "chijanzen"               '假設密碼 chijanzen
        Application.SendKeys myPW, True    '取消保護密碼時需打入原始密碼
        Application.SendKeys "{ENTER}", True    '按確定鈕(預設值)
        Application.SendKeys "{ENTER}", True    '按確定鈕(預設值)
        Application.SendKeys "%{F11}", True    'Alt + F11 切換到Excel視窗
    End If

    '清除密碼
    Application.SendKeys "%{F11}", True   'Alt + F11 切換到VBA視窗
    Application.SendKeys "%T", True      'ALT + T   工具(繁體中文是(T))
    Application.SendKeys "e", True       '工具(T)-VBproject屬性(E)
    myPW = "chijanzen"                   '假設密碼 chijanzen
    Application.SendKeys "^{TAB}", True  'TAB 鍵(切換到PAge2 保護頁面)
    Application.SendKeys "{-}", True     '選取Checkbox方塊(鎖定專案以供檢視)
    '({+} 選取, {-} 取消選取)
    Application.SendKeys "{TAB}", True   'TAB 鍵(跳到第一次輸入密碼 Textbox
    Application.SendKeys "{DEL}", True   '清除密碼
    Application.SendKeys "{TAB}", True   'TAB 鍵(跳到第二次輸入密碼 Textbox
    Application.SendKeys "{DEL}", True   '清除密碼
    Application.SendKeys "{ENTER}", True    '按確定鈕(預設值)
    Application.SendKeys "%{F11}", True  '返回Excel視窗
    Application.ScreenUpdating = True

版权声明:本文著作权归原作者所有,欢迎分享本文,谢谢支持!
转载请注明:VBA打开密码保护的VB代码并删除密码 | 猎微网

评论已关闭!