Как сделать так, чтобы этот простой скрипт восстановления 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
, но это не имеет большого значения.
Я пытаюсь достичь более высоких скоростей, и это в основном хобби-проект, выполненный из интереса.