VBA 抓取代码无法识别标签或类



亲爱的叠花,

我是VBA的新手,我尝试从受密码保护的网站获取一些数据。填写用户名和密码并单击提交按钮可以正常工作。然后,打开另一个页面,我必须单击几个"按钮",但我不明白为什么它不起作用。我尝试单击以下图标。

<td class="menuitem"> <a title="Klik hier voor de dienst Kadaster-on-line" class="navig" onmouseover="return s_('Kadaster-on-line')" onmouseout="return s_()" href="https://kadaster-on-line.kadaster.nl/default.asp" target="_parent">Kadaster-on-line</a>

到目前为止,代码的第一部分有效

Dim IE As New SHDocVw.InternetExplorer
Dim HTMLDoc As MSHTML.HTMLDocument
Dim HTMLInput As MSHTML.IHTMLElement
Dim HTMLButtons As MSHTML.IHTMLElementCollection
Dim HTMLButton As MSHTML.IHTMLElement
Dim HTMLAs As MSHTML.IHTMLElementCollection
Dim HTMLA As MSHTML.IHTMLElement
IE.Visible = True
IE.navigate "https://mijn.kadaster.nl/security/login.jsp"
Do While IE.Busy = True Or IE.ReadyState <> 4: DoEvents: Loop
Set HTMLDoc = IE.Document
Set HTMLInput = HTMLDoc.getElementById("gebruikerscode")
    HTMLInput.Value = "username"
IE.Document.forms("myform").elements("wachtwoord").Value = "password"
    IE.Document.forms("myform").elements("inloggen").Click
Do While IE.Busy = True Or IE.ReadyState <> 4: DoEvents: Loop

但是第二部分不起作用。 首先,我试图通过getelementsbyclassname来弄清楚它,但我想它应该通过标签名称工作

Set HTMLAs = HTMLDoc.getElementsByTagName("td")
    'For Each HTMLA In HTMLAs
        Debug.Print HTMLAs.Length
    'Next

代码似乎无法识别标签名称"TD"我还尝试了类名"菜单项"的代码

有人可以帮我吗?

亲切问候

你需要重新执行

Set HTMLDoc = IE.Document 

加载新页面后。否则,HTMLDoc仍然指向上一页(不再可用...