2017-01-17 7 views
-1

Я новичок в использовании VBA. Я пытаюсь обернуть свою голову, используя ее правильно. У меня есть этот код, и кажется, что он отлично работает 1 st, но потом я не могу заставить его работать снова. Я пытаюсь попасть на страницу сводки матча для игры в баскетбол. Если бы я мог бы получить некоторую помощь, которую она была бы оцененаКод VBA не работает постоянно

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

ли вы получите какие-либо ошибки? Пожалуйста, объясните **, как ** это не работает последовательно. – Dai

+0

Когда я 1-й использую этот код, он отлично работает, он отобразит страницу сводной информации о матче, но если я попытаюсь запустить код снова, страница с совпадением не появится. – Niftywonz

ответ

0

попробуйте использовать этот

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

--corrected

0

Ваш код на самом деле выглядит хорошо с одной небольшой tweak- забудьте добавить:

IE.Quit 
Set IE = Nothing 
End Sub 

В противном случае несколько экземпляров IE будут прятаться в фоновом режиме - у других есть предложение используя метод CreateObject («InternetExplorer.Application»), но я предпочитаю использовать используемую вами методологию, поэтому у вас есть настоящий объект InternetExplorer, который вы можете увидеть его методы & свойства, если это необходимо.

Я запустил его и не получил ошибки, но также не получили никаких TD для удовлетворения предложения If - это может быть просто из-за сроков веб-сайта и его данных, element.title не является атрибутом, который я видел очень часто, поэтому, возможно, это источник ваших проблем, и вы должны пересмотреть атрибут, который вы проверяете, чтобы соответствовать вашему предложению if.

Надеется, что это помогает, ThesilkCode

Смежные вопросы