Загрузка курсов ЦБ с сайта.
Сохранить в файлеОбсудить в форуме
Описание
Пример загрузки курсов валют с сайта www.cbr.ru
Текст примера
/********************************************** Импорт курсов ЦБ с сайта www.cbr.ru Смоленков А.Д. КБ "Легион" Smolenkov@lgn.ru **********************************************/ Import "..\\mac\\rslx.d32","..\\mac\\lgxs.d32"; /**/ {curdate}=date(); /**/ _dd=trim(substr(string({curdate}),1,2)); _mm=trim(substr(string({curdate}),4,2)); _yyyy=trim(substr(string({curdate}),7,4)); if (Strlen(_dd)==1) _dd="0"+_dd; end; if(IsStandAlone()) /* 2-х звенка */ ob=ActiveX("Excel.Application"); else /* 3-х звенка */ ob=TlgActiveX("Excel.Application",true); end; ob.DisplayAlerts = False; ob.Workbooks.Add; QueryTables = ob.ActiveSheet.QueryTables.Add("URL;http://www.cbr.ru/currency_base/D_print.asp?date_req="+_dd+"/"+_mm+"/"+_yyyy,ob.ActiveSheet.Range("A1")); QueryTables.Connection = "URL;http://www.cbr.ru/currency_base/D_print.asp?date_req="+_dd+"/"+_mm+"/"+_yyyy; QueryTables.Destination = ob.ActiveSheet.Range("A1"); QueryTables.Name = "2004_1"; QueryTables.FieldNames = True; QueryTables.RowNumbers = False; QueryTables.FillAdjacentFormulas = False; QueryTables.PreserveFormatting = True; QueryTables.RefreshOnFileOpen = False; QueryTables.BackgroundQuery = True; QueryTables.RefreshStyle = 1;/*xlInsertDeleteCells;*/ QueryTables.SavePassword = False; QueryTables.SaveData = True; QueryTables.AdjustColumnWidth = True; QueryTables.RefreshPeriod = 0; QueryTables.WebSelectionType = 3/*xlSpecifiedTables*/; QueryTables.WebFormatting = 3 /*xlWebFormattingNone*/; QueryTables.WebTables = "3"; QueryTables.WebPreFormattedTextToColumns = True; QueryTables.WebConsecutiveDelimitersAsOne = True; QueryTables.WebSingleBlockTextImport = False; QueryTables.WebDisableDateRecognition = False; QueryTables.WebDisableRedirections = False; QueryTables.Refresh; /*2004_1: получение данных...*/ while(trim(ob.ActiveSheet.Range("A1").Value)=="2004_1: получение данных...") end; i=1; while(i<30) Range="A"+trim(string(i)); u=int(ob.ActiveSheet.Range(Range).Value); if (u==840) _currate_=ob.ActiveSheet.Range("E"+trim(string(i))).Value; elif(u==978) _curratee_=ob.ActiveSheet.Range("E"+trim(string(i))).Value; end; i=i+1; end; ob.Quit; println({curdate}); println("Курс USD:",_currate_); println("Курс EUR:",_curratee_);