Precisa extrair dados do site a cada 5 segundos usando o Vba [closed]

1

Eu preciso puxar dados de www.dsebd.org depois de 5 segundos. este código Vba extrai dados, mas não é executado automaticamente. Por favor me ajude.

Sub ButtonCode()

     ' execute macros
    Call GetCotton
     ' submit macro to run again in 5 sec
    Application.OnTime Now + TimeValue("00:00:05"), "ButtonCode"

End Sub

Sub GetCotton()

        Dim xml    As Object
    Dim html   As Object
    Dim elemcollection As Object
    Dim result As String
    Dim t As Long, r As Long, c As Long, ActRw As Long
    Set xml = CreateObject("MSXML2.XMLHTTP.6.0")
    With xml
        .Open "GET", "http://www.dsebd.org/dseX_share.php", False
        .send
    End With
    result = xml.responseText
    Set html = CreateObject("htmlfile")
    html.body.innerHTML = result
    Set elemcollection = html.getElementsByTagName("table")
    For t = 0 To elemcollection.Length - 1
        For r = 0 To elemcollection(t).Rows.Length - 1
            For c = 0 To elemcollection(t).Rows(r).Cells.Length - 1
                ThisWorkbook.Sheets("Sheet1").Cells(ActRw + r + 1, c + 1) = elemcollection(t).Rows(r).Cells(c).innerText
            Next c
        Next r
        ActRw = ActRw + elemcollection(t).Rows.Length + 1
    Next t
End Sub
    
por Milton 06.06.2014 / 10:24

1 resposta

0

Você não indica qual é a mensagem de erro ou onde ela ocorre. Eu suspeito que não pode encontrar o código em questão. Então, mude

Application.OnTime Now + TimeValue("00:00:05"), "ButtonCode"

para

Application.OnTime Now + TimeValue("00:00:05"), "thisworkbook.ButtonCode"
    
por 06.06.2014 / 12:37