使此xlsx密码恢复VBA代码运行得更快

时间:2019-03-23 02:08:06

标签: excel vba

如何使这个简单的密码恢复vba脚本运行得更快?

Sub Pass_Rec()
Dim passfoundx As Boolean
For i = 0 To 1200
passfoundx = True
passxy = Str(i)
On Error Resume Next
Workbooks.Open "C:\Passed_Book.xlsx", , , , Replace(passxy, " ", "")
Select Case Err
        Case 1004 'Wrong password"
            'MsgBox "Wrong!"
            passfoundx = False
        Case 0
        Case Else
            'MsgBox Err & ": " & Error
            'Err.Clear
      End Select
If passfoundx = True Then
MsgBox ("password found!")
MsgBox (i)
Exit Sub
End If

Next i

End Sub

密码生成发生在其他地方,这不是问题,唯一的问题是行Workbooks.Open "C:\Passed_Book.xlsx", , , , Replace(passxy, " ", "")花费很长时间,并且减慢了整个密码恢复的速度。

此代码大约需要一分钟以上的时间才能找到密码“ 66”!

我已经尝试定义Excel.Application,但是并没有太大的区别。

我正在尝试提高速度,这主要是出于兴趣的业余爱好项目。

0 个答案:

没有答案