Страницы: 1
RSS
вопрос по импорту данных с сайта ЦБ в Excel,
 
Всем добрый день. Давно не появлялся на ваше сайте и наверное потерял квалификацию в связи с этим.
суть вопроса следующая. В 2013 году можно было импортировать данные по курсам валют за период в таблицу эксель путем создания веб запроса. на текущий момент сайт ЦБ изменил полностью весь интерфейс и соответственно копируется не сама таблица курсов а все, включая рекламу. Думаю что мой вопрос актуален , так как много кто работает с данными веб запроса ми. если кто то нашел решение проблемы прошу помощи. заранее спасибо.
Satan777
 
Вчера чуть правил код обращения к cbr.ru: http://programmersforum.ru/showthread.php?t=63669
Но там пора менять подход... Мне это не актуально, ищите заинтересованных :)
 
спасибо. Пробую
Satan777
 
я решил проблему таким образом( сделал отдельный лист)
 
Создать лист конечно можно. Но Нужна таблица курсов по каждой валюте в динамике. суть следующая. когда договор в валюте оплата частями производиться в рублях по курсу на текущую дату. И при данных расчетам нужна таблица которая не будет изменяться рекламой и прочей информацией. Грубо говоря нужно что бы при открытии файла добавлялся новые курсы валют как раньше и делался автоматический пере расчет всех ячеек.
Satan777
 
так используйте ВПР.  Там же есть пример с долларом и евро. ВПРом вытаскиваю их. В принципе меня устраивает. все обновляется при открытии книги или при нажатии кнопки.
 
В общем случае - зачем держать у себя все курсы всех валют на каждую дату, если их всегда на каждый конкретный случай можно получить с сайта банка?
Можно макросом, можно использовать UDF с параметрами валюта/дата.
Я макросом для большого списка сделок делал по такому алгоритму - если в словаре нет ключа валюта/дата, то обращался в банк и записывал ключ-курс в словарь. Если есть в словаре - брал из словаря.
В принципе, можно в конце процесса выгружать словарь на лист, а в начале загружать с листа, если даты в сеансах возможно будут повторяться. Но т.к. у меня даты в общем не повторялись - то и старые курсы (с прошлого сеанса) нет нужды хранить, следовательно словарь "жил" только в пределах сеанса.
 
На старой планете несколько раз выкладывал это файл.
До сих пор получение курса через xml - работает.
Основная засада, что на новом сайте цб - не все корректно работает. Не работает календарь на страницы экспорта срочной структуры процентных ставок.
получить значения G-Curve с сайта -невозможно.
Пришлось писать SOAP запрос.
 
Не получилось прикрепить файл, попытка #2
 
данный вариант не подойдет. Так как нужно хранить именно все курсы, что бы было можно сделать пере расчет на любую дату. И привязка идет всегда к разным датам к сожалению, а это уже другой курс валюты. Грубо говоря все должно быть согласно бухгалтерскому учету организации, а там применяются курсы валют на дату оплаты.
Satan777
 
Впервые в жизни попробовал поработать с XML (давно уже хотел) - впечатлен скоростью получения результата.
думаю в данном направлении можно развивать программу, чтобы получать ту самую динамику. Сейчас таблица выводится на конкретный день
Учимся сами и помогаем другим...
 
от это уже более лучший вариант. Но пока не подойдет.
Satan777
 
Тоже заинтересован в таблице курсов.
В настоящее время имеется большая таблица вида:
Дата             Курс USD             Курс EURO             EURO/USD
Нужно, чтобы макрос подтягивал вниз все недостающие данные (даты и курсы).
Изменено: Руслан А. - 04.03.2014 12:58:34
Век живи, век учись - два века проживешь!
 
есть вариант найти сайт на который курсы копируется с Саша ЦБРФ . Но как ему верить и будет ли он работать хотябы какое то время и хранить эти данные.
Satan777
 
а такой вариант, от многоуважаемого EducatedFool вас не устраивает?
 
Буду пробовать. Но не уверен. мак росы работают как правило при нажатии использовать. А веб запрос всегда и автоматически. По факту мне нужно разбираться я не разбираюсь в программировании так как сам экономист. могу только выполнить. для меня сам код макроса ничего не гворит((( к сожалению
Satan777
 
Вот не понимаю - зачем хранить все курсы "что бы было можно сделать пере расчет на любую дату"?
Вот нужно мне сделать расчёт по USD на 2 января прошлого года - взял курс с сайта и посчитал.
Нет, ну конечно можно их хранить и у себя - но на сайте искать проще  :)
 
egonomist, кстати, да
я тут начитался форумов, - думал, мой макрос не работает
сейчас проверил - работает как и раньше, — не знаю, что тут все внезапно стали искать решение проблемы...

только что сделал в одном файле без макросов (через веб-запрос, и формулу ВПР) - тоже все работает.
Ссылка для веб-запроса: http://www.cbr.ru/scripts/XML_daily.asp
(как и раньше, ничего не изменилось)
 
Не работает, если парсить html - там чуть сдвинулись позиции данных.
Ну и кажется поменялся адрес, если судить по древнему коду с программерс и сайту банка сегодня. Но старый адрес тоже пока работает.
 
да дело в том что курсы валют это только верхушка на которой все основывается.  в дальнейшем все эти курсы обрабатываются формулами ВПР, МАКС, если и еще штук 10 . Представь что тебе нужен курс только на одну дату, а мне нужны все курсы валют, что бы быть уверенным в своих расчетам. человек склонен к ошибкам, а компьютер не делает ошибок если человек сделал правильный алгоритм. зачем каждый день выполнять однотонную работу если эксель все сделает сам. как правило за техническую работу ничего не платят и следовательно нет смысла ее делать долго и упорно)
Satan777
 
to Satan - возьмите код с сайтаИгоря.
в книге excel нажмите Alt+F11, в панели инструментов Insert-Module, вставьте текст макроса, сохраните, после этого в книге можете использовать функцию =GetRate("USD";"01.01.2014").

p.s:совет- учите макросы. я сам в прошлом экономист, сейчас аналитик отдела управления активами и пассивами в банке.
 
Возможно я уже поздно, но главное, что я начинаю понимать суть xml  :D
Докрутил в общем загрузку курсов валют за любой период
Учимся сами и помогаем другим...
 
Цитата
ber$erk пишет:
Докрутил в общем загрузку курсов валют за любой период
Супер!
Век живи, век учись - два века проживешь!
 
Возможно вам пригодится.
 
Спасибо, Doober.
Это, я так понимаю, SOAP? на первый взгляд выглядит более массивно, чем XML. Будем изучать
Учимся сами и помогаем другим...
 
Цитата
ber$erk пишет:
SOAP?
Запросы к SOAP,ответ   XML документ.
Посмотрите ЗДЕСЬ,много интересного есть.
 
Для себя делал такой загрузчик валют (USD и EUR) через XML
В расчетах курс на любую дату можно ВПРом подтянуть.
 
Пока все буду просматривается. возьму паузу
Satan777
 
всем спасибо за комментарии и помощь
Satan777
 
У меня тоже есть вопрос по поводу подтягивания курсов. Точнее по чему они не сохраняются после записи файла.
Есть файл .xls на сервере c листом где подтягиваются курсы, вот формула:

=ФИЛЬТР.XML(ВЕБСЛУЖБА("http://www.cbr.ru/scripts/XML_daily_eng.asp?date_req="&ТЕКСТ([@Дата];"ДД/М...='R01090B']/Value")

Все работает на ура, курсы подтягиваются, но при сохранении файла курсы не сохраняются. На локальном компьютере сохраняются через раз, а на сервере не сохраняются вообще. В чем может быть дело?
Страницы: 1
Наверх