使用Excel和IE的VBA:无法获得源代码正确的源代码?

时间:2017-10-25 17:51:38

标签: excel vba excel-vba internet-explorer slp

我目前正在使用VBA和Excel自动化我的IE,因为我们在Internet Explorer中调用的SAP系统中有一些重复性任务要完成。
到目前为止,我能够启动IE并导航到我们系统的起始页面。

我查看了Sap系统的源代码,以便从div中搜索id(比如说它的'SampleID')。但是,如果我尝试通过vba点击它,我只会返回'没有'。所以我试图通过vba Debug.Print打印出源代码来查看问题。事情就是这样:

打印的源代码与网站的源代码完全不同。在打印的代码中,例如我无法在网站源代码中找到的iframe。这就是我无法找到我的div和任何其他对象的原因,因为它们不在vba搜索的代码中。 谁能告诉我什么出错了?为什么源代码完全不同?我会很感激一些提示!

Sub stgGo(){
 Dim i As Long
 Dim IE As InternetExplorerMedium
 Dim objElement As Object
 Dim objCollection As Object  

 Set IE = New InternetExplorer
 IE.Visible = True
 IE.Navigate ("URL")

'waiting 10 seconds to be really sure javascript is ready
 Application.Wait (Now + TimeValue("0:00:10")) 

'printing out the false source code
 Debug.Print strHTML = myIE.Document.body.innerHTML 

 Set objCollection = IE.document.getElementsByTagName("div")
 i = 0
 While i < objCollection.Length
  If objCollection(i).ID = "SampleID" Then
   objCollection(i).Click
  End If
  i = i + 1
 Wend
End Sub

0 个答案:

没有答案