Excel daje mogućnost skidanja podataka sa interneta na sledeći način:
Web queries - To use a Web query to retrieve data over the Internet, you must first create a Web query and retrieve the data into Excel. To create a Web query, point to Import External Data on the Data menu, and then click New Web Query.
Mene zanima sledeće: da li je moguće napraviti makro koji će automatski menjati prethodno definisane URL adrese?
Primer: u polju A1 imam URL adresu (ili njen promenljivi deo); u B1 treba da dobijem podatak koji je skinut sa web stranice čija je adresa u A1. Source web stranice ima samo jedan red teksta sa oko tridesetak karaktera, tako da svi podaci staju u jednu excel ćeliju. Kada se radi ručno, jedan po jedan web query, sve je OK.
Inače, sama URL adresa je takve strukture da se promenljivi deo nalazi u sredini kompletne adrese. Kolona A (promenljivi srting iz URL adrese) je ulaz, kolona B (tekst sa odovarajuće stranice) bi treblo da bude rešenje.
1 promenljivi_string_1 Tekst veb stranice broj 1
2 promenljivi_string_2 Tekst veb stranice broj 2
3 promenljivi_string_3 Tekst veb stranice broj 3
4 promenljivi_string_4 Tekst veb stranice broj 4
5 promenljivi_string_5 Tekst veb stranice broj 5
6 promenljivi_string_6 Tekst veb stranice broj 6
7 promenljivi_string_7 Tekst veb stranice broj 7
8 promenljivi_string_8 Tekst veb stranice broj 8
Pokušao sam da napravim VB makro, ali ne radi. Molim vas ako neko može da ispravi ovaj makro, ili da napravi novi.
Sub Macro1()
Dim sTxt As String
For m = 1 To 1000
sTxt = Cells(m, "A").Value
strConnectString = "URL;http://www.nepromenljivi_deo_URL_adrese" & sTxt & "drugi_deo_nepromenljive_URL_adrese"
' On the Workspace worksheet, clear all existing query tables
For Each QT In ActiveSheet.QueryTables
QT.Delete
Next QT
Range("B1").Select
.FieldNames = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.WebSelectionType = xlSpecifiedTables
.WebFormatting = xlWebFormattingAll
.WebTables = True
.WebPreFormattedTextToColumns = True
.WebConsecutiveDelimitersAsOne = True
.WebSingleBlockTextImport = True
.WebDisableDateRecognition = True
.WebDisableRedirections = False
.Refresh BackgroundQuery:=False
End With
Next m
End Sub