2017-01-17 1 views
0

Ich versuche, Daten von einer Website herunterladen und in meine Excel-Datei einfügen.VBA - Klicken auf die Schaltfläche auf der Website und Herunterladen der Datendatei in Excel

Hier sind die Schritte zu dem, was ich versuche zu tun:

1) Zur Internetseite gehen: http://www.housepriceindex.ca/default.aspx

2) Klicken Sie auf "Download Historische Daten (.xls)" (Ich bin fest hier)

3) Eingang E-Mail-Adresse unten ([email protected])

4) klicken

5) überträgt die Daten aus der gerade heruntergeladen .xls-Datei akzeptieren zu meiner Akte.

Hier ist der Code so weit:

Sub GetData() 


Dim i As Long 
Dim IE As Object 
Dim objElement As Object 
Dim objCollection As Object 

Set IE = CreateObject("InternetExplorer.Application") 

IE.Visible = True 
IE.Navigate "http://www.housepriceindex.ca/default.aspx" 

Do While IE.Busy: DoEvents: Loop 
Do Until IE.ReadyState = READYSTATE_COMPLETE: DoEvents: Loop 

IE.Document.GetElementByID(lnkTelecharger2).Click 


End Sub 

Jede Hilfe ist willkommen!

+0

'IE.Document.GetElementByID (" lnkTelecharger2 "). Klicken Sie auf" Anführungszeichen fehlt ". – newguy

Antwort

0

So ist es das, was ich tun würde:

Sub GetData() 
Dim IE As InternetExplorer 
Dim HTMLDoc As HTMLDocument 
Dim objElement As HTMLObjectElement 

Set IE = New InternetExplorer 
With IE 
    .Visible = True 
    .Navigate "http://www.housepriceindex.ca/default.aspx" 
    While .Busy Or .ReadyState <> READYSTATE_COMPLETE: Wend 
    .Document.getElementById("lnkTelecharger2").Click 
    While .Busy Or .ReadyState <> READYSTATE_COMPLETE: Wend 
    Set HTMLDoc = .Document 
    Set objElement = HTMLDoc.getElementById("txtEmailDisclaimerEN") 
    objElement.Value = "Email Address" 
    Set objElement = HTMLDoc.getElementById("lnkAcceptDisclaimerEN")   
    objElement.Click 

    ' ... Get CSV somehow ... 

    .Quit 
End With 

Set IE = Nothing 
End Sub 

Jetzt offensichtlich, dass lässt Sie immer noch mit dem Thema der CSV- Erfassung habe ich versucht, eine Reihe von verschiedenen Möglichkeiten, ohne eine Arbeitsmappe Variable in die CSV einzustellen Glück ... das Problem ist, dass die Schaltfläche, auf die Sie klicken, die URL für die CSV, die Sie herunterladen, nicht enthält, so dass jemand anders weiß, wie eine Datei erfasst wird, die aufgefordert wird, zu öffnen oder zu speichern, ist dies so weit wie ich Sie können ..

Grüße helfen, TheSilkRoad

+0

Danke. Ich bekomme immer einen Fehler in der ersten Zeile: Kompilierfehler: benutzerdefinierter Typ nicht definiert. Wie behebe ich das? – RageAgainstheMachine

+0

Microsoft Internet Controls (shdocvw.dll) und 'Microsoft HTML-Objektbibliothek. Verstanden, danke, Alter! – RageAgainstheMachine

+0

Gut, froh zu helfen. – TheSilkCode

Verwandte Themen