Взаимодействие VBA с Internet Explorer

Макрос, который я создаю, берет имена из электронной таблицы Excel, открывает Internet Explorer и выполняет поиск в онлайн-каталоге. После поиска в каталоге открывается форма Java с именем менеджера. Я могу вручную перейти к имени менеджера, щелкнуть правой кнопкой мыши, скопировать ярлык, а затем опубликовать его обратно в электронной таблице. Однако у меня возникают проблемы с последовательной вкладкой и копированием ярлыка.

  1. Есть ли простой способ вернуть фокус обратно в окно IE?
  2. Как скопировать ярлык, не щелкая его вручную?

Код:

Sub Macro1()
'
Dim ie As Object
Set ie = CreateObject("internetexplorer.application")

ie.Visible = True
ie.navigate "****url****"

While ie.busy
    DoEvents
Wend

ie.document.getElementById("SSOID").Value = "Z19516732"
ie.document.getElementById("Advanced").Checked = False
ie.document.all("Search").Click

'this loop is to slow the macro as the java form is filled from the search
For i = 1 To 400000000  
    i = i + 1
Next i

'ie.Object.Activate
ie.document.getElementById("Advanced").Checked = False
ie.document.getElementById("SSOID").Focus
Application.SendKeys "{TAB 6}" ', True

'bring up the control menu/right click
Application.SendKeys "+{F10}"

'copy shortcut is 8 items down on the list
Application.SendKeys "{DOWN}"
Application.SendKeys "{DOWN}"
Application.SendKeys "{DOWN}"
Application.SendKeys "{DOWN}"
Application.SendKeys "{DOWN}"
Application.SendKeys "{DOWN}"
Application.SendKeys "{DOWN}"
Application.SendKeys "{DOWN}"

'enter was not working so the shortcut for the menu is 't'
'SendKeys "{ENTER}"
Application.SendKeys "{t}"

Windows("Book21").Activate
Range("A1").Select
ActiveSheet.Paste

End Sub
7
задан Gaffi 31 July 2012 в 20:28
поделиться