07.02.2012 23:12:19
Exceliga veebist data sikutamine (+automatiseerimine)
Exceliga saab üsna mugavalt veebist data alla laadida, kasutades Data => From Web käsklust.
Sisestada tuleb URL ja data tuleb mühinal.
Kas oleks võimalik protsessi kuidagi automatiseerida, kui on 100 erinevat URLi (lehed näevad väga sarnased välja), millelt kõigilt sooviks sarnast tabelit kätte saada?
Et saaks need eelgenereeritud URL-id Excelisse sisestada ning Excel teeks siis ülejäänud töö ise ära.
Sub Veerust() 'Avame lahtris oleva URL järgi
Dim LastRow As Long, i As Long
Dim ie As Object
Dim URL As String, X, YesNo As String
Sheets("Sheet1").Activate
LastRow = Range("A1").End(xlDown).Row
For i = 1 To LastRow
Range("A" & i).Activate
URL = Range("A" & i)
Set ie = CreateObject("InternetExplorer.Application")
With ie
.Visible = True
.Navigate URL
Do While .Busy: DoEvents: Loop
DoEvents
' Andmete võtmine.
'Siin pead leidma viisi mil moel sa andmeid võtad.
'WebQuery tömbab andmeid lahtrisse mille saad ise valida...
End With
ie.Quit
Set ie = Nothing
MsgBox "Andmed laetud"
Next i
ActiveWorkbook.Save
YesNo = MsgBox("Do you want close file", vbYesNo + vbCritical, "alfreedo")
Select Case YesNo
Case vbYes
ActiveWorkbook.Save
Application.Quit
ActiveWorkbook.Close
Case vbNo
ActiveWorkbook.Save
Case Else
Exit Sub
End Select
End Sub
Kui Sa nüüd soovid igalt lehelt kindlast tabelist andmeid tömmata siis oleks vaja lehe Source koodi näha, et võtta tabeli nimi jms
Endal oli kunagi vaja sarnast asja teha ning iga nädal oli vaja uusi andmeid exceli raportisse. Olgugi, et päringuid ei ole 100 vaid ~10, oli mudel natuke keerulisem, mistõttu võtsin vahepeale hoopis php+curl+mysql kombinatsiooni.
Samas eks otse VBAga peaks saama sarnast asja teha.
Tänud, see peaaegu sobib kuid oleks vaja saada excelisse ka kaardi link (sealt saan siis geograafilised koordinaadi) mis osade mälestiste taga on.
Ning see esimese macro variant sobiks paremini, kus aadressid võetakse exceli tabelist, sest mul oleks vaja salvestada järgnevalt lehelt terve eesti andmed.
http://et.wikipedia.org/wiki/Vikipeedia:Vikiprojekt_Kultuurip%C3%A4rand/Eesti_kultuurim%C3%A4lestised
sa ei või postitada uusi teemasid siia foorumisse sa ei või vastata selle foorumi teemadele sa ei või muuta oma postitusi selles foorumis sa ei või kustutada oma postitusi selles foorumis sa ei või vastata küsitlustele selles foorumis sa ei saa lisada manuseid selles foorumis sa võid manuseid alla laadida selles foorumis
Hinnavaatlus ei vastuta foorumis tehtud postituste eest.