Я пытаюсь включить функцию ниже. Цель состоит в том, чтобы скопировать и вставить файлы PDF на отдельные рабочие листы. Основная функция копирования и вставки работает, однако, когда я пытаюсь выполнить цикл, он запускает каждый отдельный Sub 3 раза, прежде чем переходить к следующему частному Sub. Например, перед тем, как Private Sub SecondStep пытается скопировать и вставить один и тот же PDF три раза подряд.Looping with Application.ontime
Может ли кто-нибудь помочь в правильном цикле?
Sub PDF_Copy_Paste_Loop()
Dim AdobeApp As String
Dim AdobeFile As String
Dim StartAdobe
Dim myfile As String
Dim i As Integer
i = 1
Do While i < 4
AppActivate "Tests - Excel"
Workbooks("tests").Sheets("Sheet1").Activate
myfile = Cells(i, 1)
AdobeApp = "C:\Program Files (x86)\Adobe\Acrobat 10.0\Acrobat\Acrobat.exe"
AdobeFile = "C:\Users\klanders\Desktop\" & myfile & ".pdf"
StartAdobe = Shell("" & AdobeApp & " " & AdobeFile & "", 1)
Application.OnTime Now + TimeValue("00:00:02"), "FirstStep2"
i = i + 1
Loop
End Sub
Private Sub FirstStep()
SendKeys ("^a")
SendKeys ("^c")
Application.OnTime Now + TimeValue("00:00:04"), "SecondStep2"
End Sub
Private Sub SecondStep()
AppActivate "Book1 - Excel"
Workbooks("Book1").Sheets("Sheet" & i).Activate
Range("A1").Select
SendKeys ("^v")
Application.OnTime Now + TimeValue("00:00:06"), "ThirdStep2"
End Sub
Private Sub ThirdStep()
Sheets.Add
End Sub