[ paja_odi @ 31.07.2008. 10:55 ] @
Situacija je sledeća na sajtu www.blberza.com se objavljuju finansijski izvještaji za preduzeća čijim se akcijama trguje na berzi, npr. za preduzeće Trznica A.D. B. Luka bilans stanja se nalazi na adresi http://www.blberza.com/v2/Emit...Godina=2007&Polugodisnji=0. Za neko drugo preduzeće link bi se razlikovao samo u dijelu hartijaId=xx. Da li postoji način da ako je u neku ćeliju upisan id neke hartije web query automatski promijeni adresu, a da sa stranice povuče tabelu sa bilansom tog novog preduzeća.
[ timmy @ 31.07.2008. 22:02 ] @
Jednostavno ;) Ako u A1 imas redni broj (za A.D. Banja Luka je to 18) onda sledeci makro
uvozi podatke ocevsi od celije C1:

Code:

Sub ImportBerza()
    With ActiveSheet.QueryTables.Add(Connection:= _
        "URL;http://www.blberza.com/v2/Emit...sStanjaUspjeha.aspx?hartijaId=" & [a1] & "&Tip=1&Godina=2007&Polugodisnji=0" _
        , Destination:=Range("$C$1"))
        .Name = _
        "EmitentBilansStanjaUspjeha.aspx?hartijaId=18&Tip=1&Godina=2007&Polugodisnji=0"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .WebSelectionType = xlSpecifiedTables
        .WebFormatting = xlWebFormattingNone
        .WebTables = "3"
        .WebPreFormattedTextToColumns = True
        .WebConsecutiveDelimitersAsOne = True
        .WebSingleBlockTextImport = False
        .WebDisableDateRecognition = False
        .WebDisableRedirections = False
        .Refresh BackgroundQuery:=False
    End With
End Sub


Kazem jednostavno jer sam ovo napravio snimanjem makroa a onda rucno zamenio broj 18 u trecem redu sa

Code:
" & [a1] & "


Pozdrav