Board logo

標題: [發問] 如何用程式解開VBA保護之後可直接修改程式碼? [打印本頁]

作者: PKKO    時間: 2016-11-8 17:11     標題: 如何用程式解開VBA保護之後可直接修改程式碼?

  1. Sub test()
  2.     UnprotectVBProj "0988", ActiveWorkbook '解開上鎖(只能解開無法用)
  3.     MsgBox ThisWorkbook.VBProject.VBE.CodePanes.Count '只會讀出0(正常不可能沒有模組)
  4.     '必須要分為兩個按鈕,先解開才可以改程式碼,有辦法一個按鈕直接解開又改程式碼嗎?
  5. End Sub
  6. Sub UnprotectVBProj(ByVal Pwd As String, wb As Workbook)
  7.     Dim vbProj As Object
  8.     Set vbProj = wb.VBProject
  9.     If vbProj.Protection <> 1 Then Exit Sub ' already unprotected
  10.     Set Application.VBE.ActiveVBProject = vbProj
  11.     SendKeys Pwd & "~~"
  12.     Application.VBE.CommandBars(1).FindControl(ID:=2578, recursive:=True).Execute
  13. End Sub
複製代碼

作者: PKKO    時間: 2016-11-8 18:29

發現是因為打開檔案之後,沒有點開過程式碼的地方,都無法讀取該模組
有辦法解決嗎?
作者: jeffrey628litw    時間: 2016-11-12 12:11

回復 2# PKKO

這2個檔案都是在這裡抓的,你使用看看。
[attach]25765[/attach]
作者: PKKO    時間: 2016-11-12 12:59

回復 3# jeffrey628litw


    您好,謝謝您的回覆
但其實我沒有要破解VBA密碼
我已經知道VBA密碼

是希望程式能夠
一,自動解開VBA密碼
二、可透過程式碼修改程式碼




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)