受保护的VBA代码 - 无需手动输入密码即可编写自己的代码

时间:2017-05-03 06:39:09

标签: excel vba excel-vba

我目前正在开发一个VBA项目,我希望用密码保护代码。

此外,我想使用以下代码行:

Public Sub main()

'Dim CodeModuleSoure As Variant
Dim CodeModuleDestination As Variant


With Application.VBE.ActiveVBProject.VBComponents
'Set CodeModuleSoure = Nothing
Set CodeModuleDestination = .Item(.Count)
CodeModuleDestination.codemodule.addfromstring "Private Sub Worksheet_Activate()" _
                                                & vbCrLf & "Call RefreshRibbon" _
                                                & vbCrLf & "End Sub"
End With

End Sub

这基本上增加了

Private Sub Worksheet_Activate()
Call RefreshRibbon
End Sub

代码。

由于这在项目仍然受到保护时不起作用,我进行了一项“小”研究并发现:Is there a way to crack the password on an Excel VBA Project

最后我创建了一个函数,我首先调用“crack”,然后调用“code-writer”:

Sub otherfuncts()
unprotected
Call Sheet4.main
End Sub

当我尝试使用Button运行otherfuncts函数时,它会给我这个错误: Error

如果我打开VBA-Project它实际上是“破解”,如果我在查看项目后重新运行代码,按钮不会给我一个错误。有没有一个解决方案,它在第一次尝试?

0 个答案:

没有答案