Application.Wait Теперь заставляет мой vba-скрипт не l oop через Dir - PullRequest
0 голосов
/ 13 февраля 2020

Когда я запускаю этот код без 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
...