Я пробовал довольно много вариантов, но я считаю, что это самое близкое к тому, что я получил, и я просто не знаю, как действовать.
Вот основная концепция.У меня есть URL, который будет запускать создание и загрузку файла в формате XLS.Мой код проходит весь путь до открытия этого файла с использованием sendkeys (% a принимает предупреждение безопасности) (хотел бы пропустить, если есть способ, на данный момент мне нужно в основном убедиться, что открытый файл из загрузки являетсяАктивное окно перед продолжением. Имейте в виду, что загруженное имя файла может незначительно отличаться.
По-прежнему есть какой-то мусор из других вещей, которые я пытался.
Вопрос: Как сделать цикл до илиесли и т. д., чтобы убедиться, что активным окном является либо MyBrowser (IE), либо книга Excel, которую я только что открыл с помощью клавиш отправки?
Sub SearchRepQ()
Dim USER1 As String
'USER1 = Application.WorksheetFunction.Index(Sheets("SRC").Range("D:D"), Application.WorksheetFunction.Match(UserForm1("TextBox1"), Sheets("SRC").Range("C:C"), 0))
Dim prefix1 As String
Dim prefix2 As String
prefix1 = "https://MyReports.com/default.aspx?&sk=Mgmt+Console&s=~_d0!2!1!!1!7!0!1!!2!!!0!1!3!2!_d2!"
prefix2 = "!Central+Standard+Time!_d6!fvf%7c%40ticketowner!DrurxrErsrzqFqypvspwpxpCpvtpwpwpqBqypvspwpxpApvtpwpwpqqrzqqqrur!fvf%7c%40ticketstatusopenclosed!_d0!4!Mgmt+Console!Open!_d1!_d8!!yqHqtFpGpxpvppupxpupvpupwppwpppupvpKpJpIpEpzpBpApCppDpqyprpqsq!&xls=h$Mgmt_32_Console$ctl00$mup$t$ctl00$ctl00$exl"
Dim MyURL1 As String
Dim MyURL2 As String
MyURL1 = ("https://MyReports.com")
MyURL2 = (prefix1 & USER1 & prefix2)
Dim MyBrowser As SHDocVw.InternetExplorer
Set MyBrowser = New InternetExplorer
Dim XL As Excel.Application
'Dim IEe As New IEEvents
Set XL = Excel.Application
'Set IEe.IEApp = MyBrowser
MyBrowser.Silent = True
MyBrowser.Visible = True
MyBrowser.navigate MyURL1
Do Until MyBrowser.READYSTATE = READYSTATE_COMPLETE: DoEvents: Loop
MyBrowser.navigate MyURL2
Do Until MyBrowser.READYSTATE = READYSTATE_COMPLETE: DoEvents: Loop
VBA.AppActivate MyBrowser.document.Title & " - " & MyBrowser.Name, 0
Application.Wait (Now + TimeValue("0:00:3"))
SendKeys "%(o)"
Application.Wait (Now + TimeValue("0:00:1"))
SendKeys "%(a)"
'Dim counter As Integer
' Set counter = 0
'Dim number As Integer = 8
'Do Until number = 10
' If number <= 0 Then Exit Do
' number -= 1
' counter += 1
'Loop
VBA.AppActivate XL.ActiveWindow.Activate.Title("coveo*", 0)
end sub