我对VBA代码有疑问。我想打开这个网站:https://www.tnt.com/express/en_us/site/tracking.html,然后在“货件编号”搜索框中,我想从Excel文件中放入活动单元格。一开始,我尝试只输入特定的文本,例如:“ 777777”。
我写了下面的代码,但不幸的是搜索按钮为空,没有错误。我尝试了所有操作,但我不知道该如何更改代码。有什么线索吗?预先谢谢你。
HTML:
<input class="__c-form-field__text ng-touched ng-dirty ng-invalid" formcontrolname="query" pbconvertnewlinestocommasonpaste="" pbsearchhistorynavigation="" shamselectalltextonfocus="" type="search">
VBA:
Sub TNT2_tracker()
Dim objIE As InternetExplorer
Dim aEle As HTMLLinkElement
Dim y As Integer
Dim result As String
Set objIE = New InternetExplorer
objIE.Visible = True
objIE.navigate "https://www.tnt.com/express/en_us/site/tracking.html"
Do While objIE.Busy = True Or objIE.readyState <> 4: DoEvents: Loop
Dim webpageelement As Object
For Each webpageelement In objIE.document.getElementsByClassName("input")
If webpageelement.Class = "__c-form-field__text ng-pristine ng-invalid ng-touched" Then
webpageelement.Value = "777"
End If
Next webpageelement
End Sub
您可以使用querySelector
+ class name
查找元素。
类似
'Find the input box
objIE.document.querySelector("input.__c-form-field__text").value = "test"
'Find the search button and do a click
objIE.document.querySelector("button.__c-btn").Click
无需遍历元素。除非站点允许您同时搜索多个跟踪号。