发货跟踪,返回日期给出 运行 时间错误 424 需要对象
Shipment tracking, returning date gives Run Time Error 424 Object Required
所以我正在为一个同事做一个项目,我 运行 遇到了一个问题。我以前从未与 Excel VBA 合作过,而且我几乎没有接受过编码方面的培训。 Whosebug 和许多其他网站提供了巨大的帮助。我只是不确定该去哪里。
目标。
- 导航到网页
- 等待页面加载
- Return 交货日期回到 excel(单元格 b1)
到目前为止,这是我的代码
Public Function RoadRunnerTracking()
Dim IE1 As Object
Dim DeliveryCollection As Object
Dim ProUrl As String
Set IE1 = CreateObject("InternetExplorer.application")
ProUrl = "https://www.rrts.com/Tools/Tracking/Pages/MultipleResults.aspx?PROS=" & Range("a1")
With IE1
.Visible = True
.Navigate ProUrl
Do Until Not IE1.Busy And IE1.readyState = 4: DoEvents: Loop
End With
Set DeliveryCollection = Trim(IE1.document.getElementsByTagName("Span")(16).innerText) 'THIS LINE RETURNS A RUN TIME ERROR 424 OBJECT REQUIRED
Range("b1").Value = DeliveryCollection
Set IE1 = Nothing
End Function
据我所知,这不是一个完善的功能。我只是想解决一些问题。
我不明白的是我在另一个函数中测试了该行并且它工作正常。我在测试功能上作弊,将 link 直接粘贴到结果页面而不是 运行 跟踪号码,但我认为它会是一样的。
这是该行似乎可以正常工作的代码。
Public Function PartTwoTest()
Dim IE1 As Object
Set IE1 = CreateObject("InternetExplorer.application")
With IE1
.Visible = True
.Navigate "https://www.rrts.com/Tools/Tracking/Pages/MultipleResults.aspx?PROS=359607744"
Do Until IE1.readyState = 4
DoEvents
Loop
End With
DeliveryCollection = Trim(IE1.document.getElementsByTagName("Span") (16).innerText)
Range("b1").Value = DeliveryCollection
Set IE1 = Nothing
End Function
如有任何帮助,我们将不胜感激。
我认为 deliverycollection 需要是一个字符串。
所以我正在为一个同事做一个项目,我 运行 遇到了一个问题。我以前从未与 Excel VBA 合作过,而且我几乎没有接受过编码方面的培训。 Whosebug 和许多其他网站提供了巨大的帮助。我只是不确定该去哪里。
目标。
- 导航到网页
- 等待页面加载
- Return 交货日期回到 excel(单元格 b1)
到目前为止,这是我的代码
Public Function RoadRunnerTracking()
Dim IE1 As Object
Dim DeliveryCollection As Object
Dim ProUrl As String
Set IE1 = CreateObject("InternetExplorer.application")
ProUrl = "https://www.rrts.com/Tools/Tracking/Pages/MultipleResults.aspx?PROS=" & Range("a1")
With IE1
.Visible = True
.Navigate ProUrl
Do Until Not IE1.Busy And IE1.readyState = 4: DoEvents: Loop
End With
Set DeliveryCollection = Trim(IE1.document.getElementsByTagName("Span")(16).innerText) 'THIS LINE RETURNS A RUN TIME ERROR 424 OBJECT REQUIRED
Range("b1").Value = DeliveryCollection
Set IE1 = Nothing
End Function
据我所知,这不是一个完善的功能。我只是想解决一些问题。
我不明白的是我在另一个函数中测试了该行并且它工作正常。我在测试功能上作弊,将 link 直接粘贴到结果页面而不是 运行 跟踪号码,但我认为它会是一样的。
这是该行似乎可以正常工作的代码。
Public Function PartTwoTest()
Dim IE1 As Object
Set IE1 = CreateObject("InternetExplorer.application")
With IE1
.Visible = True
.Navigate "https://www.rrts.com/Tools/Tracking/Pages/MultipleResults.aspx?PROS=359607744"
Do Until IE1.readyState = 4
DoEvents
Loop
End With
DeliveryCollection = Trim(IE1.document.getElementsByTagName("Span") (16).innerText)
Range("b1").Value = DeliveryCollection
Set IE1 = Nothing
End Function
如有任何帮助,我们将不胜感激。
我认为 deliverycollection 需要是一个字符串。