VBA代码无法正常工作

时间:2017-01-17 01:19:41

标签: excel vba

我是使用VBA的新手。我正试图正确地使用它。我有这个代码,它似乎完美地工作了1 st 时间,但后来我无法让它再次工作。我正试图进入篮球比赛的比赛摘要页面。如果我能得到一些帮助,将非常感激

Sub Test()
    Dim URL As String
    Dim IE As InternetExplorer
    Dim HTMLdoc As HTMLDocument
    Dim TDelements As IHTMLElementCollection
    Dim TDelement As HTMLTableCell
    Dim i As Integer

    URL = "http://www.flashscore.com/basketball/"
    Set IE = New InternetExplorer

    With IE
        .Navigate URL
        .Visible = True
        While .Busy Or .ReadyState <> READYSTATE_COMPLETE: DoEvents: Wend
        Set HTMLdoc = .Document
    End With

    Set TDelements = HTMLdoc.getElementsByTagName("td")
    For Each TDelement In TDelements
        If TDelement.Title = "Click for match detail!" Then
            TDelement.Click
        End If
    Next
End Sub

2 个答案:

答案 0 :(得分:0)

尝试使用此

Dim IE as Object
Set IE = CreateObject("InternetExplorer.Application")     

- 更正了

答案 1 :(得分:0)

您的代码实际上只需要一个小调整就可以了 - 请务必添加:

IE.Quit
Set IE = Nothing
End Sub

否则多个IE实例将隐藏在后台 - 其他人建议使用CreateObject(“InternetExplorer.Application”)但我更喜欢使用您使用的方法,因此您有一个真正的InternetExplorer对象,您可以看到它的方法&amp;必要时的属性..

我运行它并没有得到错误,但也没有得到任何TD来满足If子句 - 这可能只是由于网站及其数据的时间,element.title不是属性我经常使用,所以也许这是你的问题的根源,你应该重新审视你正在检查什么属性来满足你的if条款。

希望这有帮助, ThesilkCode