Добрый день. Наткнулся на любопытную тему: http://www.planetaexcel.ru/forum/?PAGE_NAME=read&FID=8&TID=24133 Собственно тема та же, мне тоже нужен импорт курсов валют с сайта nbrb.by Наиболее привлекательный файл был выложен в посте №10, я убрал из него все лишнее, а именно оставил только курсы рб. Но в нем есть косяк непонятного мне происхождения. Сегодня 12.05.2015, когда я запускаю обновить на экран выводятся данные с 1 января по 12 апреля 2015 года, но до марта дата выводится корректно, а в апреле месяц меняется местами со днем. То есть вместо 12.05.2015 в ячейке "А135" выводится значение 05.12.2015 (5 декабря 2015 года? ). При чем курсы отображаются корректно,едет только дата. Можно было бы все так и оставить, но ведь я буду потом подставлять курсы используя функцию =ВПР. Буду крайне признателен за помощь в данном вопросе!
P.S. Также буду благодарен, если кто-нибудь мне пояснит, как сместить данный диапазон на n строк вниз, чтобы он начинался скажем не с 4 строки а с 50ой?
Добрый день! Хотел использовать готовое решение, но столкнулся с ошибкой. Не выгружает курсы по Евро и Росс рублю начиная с 07.01.2016. Посмотрел код, не смог найти из за чего происходит данная ошибка.
Там на сайте есть описание как это делать по-современному с API. xml они говорят устарело... Но можно из xml тянуть сегодняшний курс если что - такая страница выдаётся, значит с неё данные можно взять.
Но данные по xml отсутствуют по рублю и евро... а если делать по API надо вообще все переписать. Я знаю как с других сайтов вытянуть эти данные, но хотелось бы иметь дело с первоисточников. Похоже что по xml они поддержку данных валют убрали...
но, все-таки код из моего поста по ссылке выглядит вот так
Код
Function НБРБ(Optional ByVal Curr$ = "USD", Optional ByVal dDate As Date) As Currency
Dim ondate$
With CreateObject("msxml.DOMDocument")
ondate = "?ondate=" & Format(IIf(dDate, dDate, Date), "mm/dd/yyyy")
.async = 0: .Load "http://www.nbrb.by/Services/XmlExRates.aspx" & ondate
With .SelectSingleNode("*/Currency[CharCode='" & UCase(Curr) & "']")
НБРБ = CCur(.ChildNodes(4).Text) / Val(.ChildNodes(2).Text)
End With
End With
End Function
Добрый день. Ребята помогите пожалуйста. Очень нужна ваша помощь. К сожалению я не программист и макросы писать не умею. В ячейке R1C10 прописан текущий курс рубля РФ. Каждый день меняю его вручную. Если не сложно, подскажите пожалуйста, что нужно сделать, что бы подтягивался курс при загрузке файла автоматически. Благодарю!
artyrH, спасибо вам большое! Вы гений! Вот, только знать бы еще последовательность ваших действий. Если не разберусь, буду перекидывать всю таблицу в ваш файлик. Еще раз благодарю за помощь!
я тоже не программист. Даже не знаю, в каком формате отдает это НацБанк, наверное по API . С xml пока не разобрался, Вот все валюты НБ РБ, 78 шт У меня формула вида :
¶mmode=2 это (& parammode=2) без скобок и пробелов
красивее конечно ТЕКСТ($B6;"ГГГГ-ММ-ДД")
вместо $С$5 -- писать по-человечески -- "USD", "EUR", "RUB" (вместе с кавычками) или ставить в ячейу С5 (без кавычек), дата В6 дата в любом формате, главное формат ячейки вида 01.01.2022 (без * )
я уже сделал версию запроса и по XML по инструкции Николая
а вот еще вопрос: Странное поведение НацБанка Беларуси . Он отдает дату в неполиткорректном формате "ММ-ДД-ГГГГ".
Но мало того что все перевернуто, он еще и умудряется посередине месяца менять формат даты с "ММ-ДД-ГГГГ" на "ММ/ДД/ГГГГ" и потом назад. И все без разрешения и всякой логики. У банка там на сервере ошибки в базе данных , мы это получаем, и исправить нельзя. Но мы знаем функцию ТЕКСТ($B6;"ГГГГ-ММ-ДД") , которая преобразует любую дату к нужной текстовой строке. И эта крайне полезная функция не различает дату, где там ДЕНЬ, где там МЕСЯЦ. А вот функции ДЕНЬ(), где там МЕСЯЦ() и ГОД() различать обязаны. Получается, что при ответе банка по API передается информация по структуре даты подробно, где ДЕНЬ , где МЕСЯЦ. А вот по XML я сомневаюсь, что в этом длинном текстовом потоке (разрешается одним запросом формировать ответ длинною в год) есть информация по структуре даты.
Как привести ответ банка (в части даты) к человеческому виду ?
написал: умудряется посередине месяца менять формат даты с "ММ-ДД-ГГГГ" на "ММ/ДД/ГГГГ" и потом назад. И все без разрешения и всякой логики
не замечал такого поведения: последние лет 5 они хранят дату в формате "2022-01-01T00:00:00" - и кривенько написанный пять лет назад запрос пока не падает. Коды валют иногда меняются.
, благодарствую. Вообще про XML только здесь понял, как это просто , удобно и какие огромные возможности. Вот , сегодня узнал , что PowerQuery это надстройка к Excel , а не что-то самостоятельное и не нужное -- тоже не плохо. Последней стадией моего развития на planetaexcel.ru должен стать Visual Basic , но похоже, не в этой жизни
Приветствую. Появилась необходимость получения курсов НБ РБ в excel на определенную дату в автоматическом режиме, почитал ветку. Пишу в ячейке функцию =ВЕБСЛУЖБА("ссылка с сайта нбрб") получаю ошибку #ЗНАЧ! причем если эту ссылку ввести в браузер она срабатывает и показывает данные. Прошу помощи что не так?
Мак Сим, уже месяц прошел. Я тоже долго бился с этим НацБанком РБ. Вроде победил. Тоже читал эта тему, как видно выше. в соседней теме про "Сравнение дат" есть файл. И там все виды импорта из этого банка. Вроде, JSON нет. Может, будет полезно.
там на листе с XML какая то ошибка плавающая. Когда в середине массива есть правильный курс, а весь массив выдает ошибку. Хотя такого в принципе быть не может. Массив либо работает весь на 365 строк, либо нет. и раньше он прекрасно поработал , т.к. ошибиться в 1 операторе сложно. Пока я обхожусь и без этого XML.