您能否在此代码上为我提供帮助,如果第二个循环时间出现问题,我会拒绝错误权限(我单击第一个URL,它打开,我返回,我想在此单击第二个相同的URL页面,但错误仍然消失。)非常感谢您的帮助。
Dim fourdoc As HTMLDocument
Set fourdoc = objIE.document
Dim t As Long, i As Long
Dim delement As MSHTML.HTMLInputElement
Dim delements As MSHTML.IHTMLElementCollection
Set delements = fourdoc.getElementsByTagName("a")
For Each delement In delements
'''''''''''''''''''''''''''''
Do While objIE.Busy Or objIE.readyState <> 4
DoEvents
Loop
''''''''''''''''''''''''''''
If delement.ClassName = "dialogUrl aImg" Then '' error permission denied there second time loop for''
'''''''''''''''''''''''''''''
Do While objIE.Busy Or objIE.readyState <> 4
DoEvents
Loop
'''''''''''''''''''''''''''''
delement.Click
'''''''''''''''''''''''''''''
Do While objIE.Busy Or objIE.readyState <> 4
DoEvents
Loop
'''''''''''''''''''''''''''''
Set fourdoc = objIE.document
'''
'here do your stuff within the new url
'''
objIE.GoBack
'''''''''''''''''''''''''''''
Do While objIE.Busy Or objIE.readyState <> 4
DoEvents
Loop
'''''''''''''''''''''''''''''
Set fourdoc = objIE.document
'''''''''''''''''''''''''''''
Do While objIE.Busy Or objIE.readyState <> 4
DoEvents
Loop
''''''''''''''''''''''''''''
End If
Next
End With
End Sub
After 24h of reflexion, ive got the solution :
将fourdoc转换为HTMLDocument设置fourdoc = objIE.document
Dim i As Integer
Dim t As Integer
'Dim delement As MSHTML.IHTMLElement
Dim delements As Object
Set delements = fourdoc.getElementsByClassName("dialogUrl aImg")
t = delements.Length
Debug.Print t
For i = 0 To t - 1
'''''''''''''''''''''''''''''
Do While objIE.Busy Or objIE.readyState <> 4
DoEvents
Loop
''''''''''''''''''''''''''''
Set fourdoc = objIE.document
Set delements = fourdoc.getElementsByClassName("dialogUrl aImg")
'''''''''''''''''''''''''''''
Do While objIE.Busy Or objIE.readyState <> 4
DoEvents
Loop
''''''''''''''''''''''''''''
delements(i).Click
'''''''''''''''''''''''''''''
Do While objIE.Busy Or objIE.readyState <> 4
DoEvents
Loop
''''''''''''''''''''''''''''
objIE.GoBack
'''''''''''''''''''''''''''''
Do While objIE.Busy Or objIE.readyState <> 4
DoEvents
Loop
'''''''''''''''''''''''''''''
Next i
感谢您的帮助!正在运行。再见]