- Katılım
- 23 Şubat 2010
- Mesajlar
- 90
- Excel Vers. ve Dili
- Excel 2007/ İngilizce
Merhaba,
Aşağıdaki websitesinden geçmiş dönem verilerini almak istiyorum. Ancak sitenin HTML kodu ile "click" eylemini ve tarih değiştirmeyi nasıl yapacağımı bir türlü çözemedim.
https://www.investing.com/equities/aksa-enerji-uretim-historical-data
Yardımcı olabilirseniz sevinirim.
Aşağıdaki websitesinden geçmiş dönem verilerini almak istiyorum. Ancak sitenin HTML kodu ile "click" eylemini ve tarih değiştirmeyi nasıl yapacağımı bir türlü çözemedim.
https://www.investing.com/equities/aksa-enerji-uretim-historical-data
Kod:
Private Sub CommandButton1_Click()
Dim ws As Worksheet
Dim x As Single
Dim y As Single
Dim qt As QueryTable
Dim Url As String
Dim IE As Object
Dim frm As Object
Dim htmldoc As MSHTML.HTMLDocument
Dim htmlinput1 As MSHTML.IHTMLElement
Dim htmlbutton As MSHTML.IHTMLElement
For x = 1 To 100
Url = "url" & x
Url = Worksheets("Hyperlink List").Range("d" & x + 1)
Url = Url
Set IE = CreateObject("InternetExplorer.Application")
IE.navigate Url
IE.Visible = False
Do While IE.readystate <> readystate_complete
Loop
Set htmldoc = IE.document
Set htmlinput1 = htmldoc.getElementById("widgetFieldDateRange")
htmlinput1.innerText = "01/01/2012 - 04/10/2017"
Set htmlbutton = htmldoc.getElementById("applyBtn")
htmlbutton(1).submit
Set ws = Worksheets("Web_Queries")
y = x * 24 '(1330)
Set qt = ws.QueryTables.Add(Connection:="URL;" & Url, Destination:=Worksheets("Web_Queries").Cells(y, 1))
With qt
.WebFormatting = xlWebFormattingRTF
.WebSelectionType = xlSpecifiedTables
.WebTables = 3
.RefreshStyle = xlOverwriteCells
.BackgroundQuery = False
.Refresh
End With
Next
MsgBox "Process Completed"
End Sub
Yardımcı olabilirseniz sevinirim.
