Получаем значение курса валют в Google Таблицах с помощью функции IMPORTXML
Как следует из названия функция IMPORTXML позволяет импортировать любые данные из xml файлов. Один из вариантов ее применения - импорт значений курсов валют - текущих или для конкретной даты/диапазона.
Я проверил работу функции на примере API двух банков - Приватбанка и ЦБ РФ.
Приватбанк
Текущее значение курса
XML файл с актуальным курсом находится по ссылке: https://api.privatbank.ua/p24api/pubinfo?exchange&coursid=11
Данные из него нужно парсить при помощи языка запросов XPath
Формула:
IMPORTXML("https://api.privatbank.ua/p24api/pubinfo?exchange&coursid=11";"//exchangerates/row[1]/exchangerate/@sale")
Получаем текущее значение USD. Прописав слева в ячейке А функцию TODAY получим отображение текущей даты.
Курс валют для даты или диапазона дат
Файл с архивными значениями находится по ссылке: https://api.privatbank.ua/p24api/exchange_rates?date=dd.mm.yyy,
где вместо dd.mm.yyyy необходимо подставить нужное значение даты. В данном случае это 30.01.2019. Конечная формула получения значения курса валют для даты
IMPORTXML("https://api.privatbank.ua/p24api/exchange_rates?date=30.01.2019; "//exchangerate[@currency='USD' and baseCurrency='UAH']/@saleRateNB")
Чтобы нужная дата автоматически подставлялась в формулу указываем в диапазон дат и используем функцию СЦЕПИТЬ (CONCATENATE). Для корректной работы формулы дату необходимо перевести в текстовый формат.
IMPORTXML(CONCATENATE("https://api.privatbank.ua/p24api/exchange_rates?date=";A2); "//exchangerate[@currency='USD' and @baseCurrency='UAH']/@saleRateNB")
ЦБ РФ
Ссылка для ежедневного значения
http://www.cbr.ru/scripts/XML_daily.asp
Формула имеет вид
IMPORTXML("http://www.cbr.ru/scripts/XML_daily.asp"; "//ValCurs/Valute[CharCode=""USD""]/Value")
Получаем данные для даты или диапазона
IMPORTXML("http://www.cbr.ru/scripts/XML_daily.asp?date_req=30/01/2019"; "//ValCurs/Valute[CharCode=""USD""]/Value")
Здесь также необходимо перевести дату в текстовый формат и обратить внимание на разделители.
На выходе получаем файл, в котором автоматически будут обновляться/добавляться данные о курсе валют.
Файл с примерами рабочих формул находится здесь