Когда я запускаю этот код без Application.Wait Now
, он перебирает все файлы в указанной папке. Когда я вставляю команду Application.Wait Now
, она открывает первый файл, выполняет ключи отправки, сохраняет и закрывает его и продолжает показывать, что он работает, но документ не открывается, и ничего не происходит, пока я не нарушу код. Как я могу решить это?
Мне нужны команды ожидания сейчас, чтобы не допустить неправильной работы sendkeys.
Sub Password()
'Loop through all files in a folder
Dim CustRow, LastRow As Long
Dim Password As String
Dim fileName As Variant
With Sheet1
LastRow = .Range("C9999").End(xlUp).Row
fileName = Dir("C:\State_K-1_Info\Password\*.pdf")
Do While fileName <> ""
CreateObject("Shell.Application").Open ("C:\State_K-1_Info\Password\" & fileName)
Application.Wait Now + 0.00005
For CustRow = 2 To LastRow
Password = .Range("C" & CustRow).Value
Application.SendKeys "{F6}", True
Application.Wait Now + 0.00001
Application.SendKeys "{Tab}", True
Application.Wait Now + 0.00001
Application.SendKeys "^(s)", True
Application.Wait Now + 0.00001
Application.SendKeys "%{F4}", True
Application.Wait Now + 0.00001
Next CustRow
fileName = Dir
Loop
End With
End Sub