2016-12-22 30 views
0

我是新来的VBA!我试图自动化一个特定的过程,即“复制Excel表格中的客户详细信息,打开IE并转到特定的URL,然后粘贴信息并单击”搜索“按钮并进入客户记录”我已成功完成但它在多个窗口中打开,因为我必须为许多客户执行此操作,这不是很好,所以我在线搜索并在IE的同一窗口中成功打开了多个TABS中的客户记录页面。无法输入文本中,即多个标签使用VBA

现在真正的问题是我无法单独输入客户在每个窗口的信息,它只是进入细节非常“第一窗口”,并搜索其

下面是我使用的代码:

Set IE = CreateObject("InternetExplorer.application") 
IE.Visible = True 
IE.Navigate ThisWorkbook.Sheets("Sheet4").Range("Link") 
Do 
If IE.ReadyState = 4 Then 
Exit Do 
Else 
DoEvents 
End If 
Loop 
On Error Resume Next 
IE.document.all("admin_name").Value = ThisWorkbook.Sheets("Sheet4").Range("User") 
IE.document.all("admin_pass").Value = ThisWorkbook.Sheets("Sheet4").Range("Pass") 
Set ElementCol = IE.document.getElementsByTagName("button") 
For Each link In ElementCol 
If link.innerHTML = "LOGIN" Then 
link.Click 
Exit For 
End If 
Next 
Application.Wait (Now + TimeValue("0:00:04")) ' Utill this line the IE opens the URL (and it is password protected) 
' From here on the code opens the customer's records page 
x = Range("J1").CurrentRegion.Rows.Count 
Y = x - 1 
For i = 1 To Y 
ActiveCell.Offset(1, -1).Select 
Dim navi As String 
navi = "Sample URL" 
IE.Navigate navi, CLng(2048) ' This is code which i used to open webpages in multiple TABS 
Application.Wait (Now + TimeValue("0:00:04")) 
Dim Firstname As Variant 
Firstname = ActiveCell.Value 
IE.document.getelementsbyname("cc_first_six").Item.innertext = Firstname 
ActiveCell.Offset(0, 1).Select 
Dim Lastname As Variant 
Lastname = ActiveCell.Value 
IE.document.getelementsbyname("cc_last_four").Item.innertext = Lastname 
Set ElementCol = IE.document.getElementsByTagName("a") 
For Each link In ElementCol 
If link.innerHTML = "Show Results" Then 
link.Click 
End If 
Next 
Next i 

末次

代码运行正常,但它仅使用第一个选项卡并搜索所有的客户,我想要做的是,它应该使用第二个选项卡以客为先在Excel中文件和第二个第三个选项卡客户在Excel文件等等......(我能完成我的需要,如果我使用多个窗口的选择,但我想这样做在同一个窗口,但多个标签)

回答

0

我做了很多的研究,但我无法找到适合此问题的解决方案。但是你可以使用sendkeys从一个标签移动到其他标签。

SendKeys "^{TAB}", True 
Application.Wait (Now() + TimeValue("00:00:10")) 
+0

感谢您的答复!然而,在正是我应该将上面的代码线 – David

+0

的SendKeys用于发送键盘按下的按钮等“^ {TAB}”被用于发送对CTRL + TAB键组合快捷键。你必须检查哪个组合键适合你。我会建议你使用其他方法,而不是使用多个选项卡,因为我找不到任何合适的解决方案在不同的选项卡之间移动。 –

+0

我使用多个Tabs的原因是因为在运行代码后,我手动复制了一些信息并将其粘贴到Excel中! :-( – David