2017-02-06 6 views
0

У меня возникли проблемы с проверкой флажка с веб-страницы. Я пробовал:Установите флажок на веб-странице из Outlook

Do 
     ' Wait till the Browser is loaded 
    Loop Until oBrowser.ReadyState = READYSTATE_COMPLETE 

    Dim HTMLDoc As HTMLDocument 
    Set HTMLDoc = oBrowser.Document 


    For Each oHTML_Element In HTMLDoc.getElementsByTagName("input") 
     If oHTML_Element.Type = "orderById" Then oHTML_Element.Click: Exit For 
    Next 


    Application.Wait (Now + TimeValue("0:00:05")) 
    oBrowser.Visible = True 

    'oBrowser.Document.forms(0).all("tdFilter").Item(0).Click 
    oBrowser.Document.forms(0).all("tdFilter").Click 
    'IE.Document.forms(0).all("tdFilter").CheckBox = True 

    ' oBrowser.Refresh ' Refresh If Needed 
Err_Clear: 
    If Err <> 0 Then 
     Err.Clear 
     Resume Next 
    End If 
End Sub 

конец это исходный код:

enter image description here

ответ

1

Не уверен, что я понимаю причину цикла:

For Each oHTML_Element In HTMLDoc.getElementsByTagName("input") 
    If oHTML_Element.Type = "orderById" Then oHTML_Element.Click: Exit For 
Next 

Кроме того, «orderById является id, поэтому, если вы не просто ссылаетесь на него как:

HTMLDoc.getElementById("orderById") 

Аналогично можно установить флажок с:

HTMLDoc.getElementById("tdFilter").Checked = True 

Если он не работает, проверить свои элементы, убедитесь, что у вас есть правильные имена, убедитесь, что у вас нет повторяющихся идентификаторов, а также проверить, как ваши события запускаются.

+0

Это работает. Спасибо за ваше время. – wittman