Возвращаемся к нашему посту с курсами.
1) Мы вывели по три столбца с курсом каждой валюты к доллару:
- НАЗВАНИЕ ВАЛЮТЫ
- ДАТА ЗАКРЫТИЯ
- ЦЕНА
2) Как вывести, например, курс арабского дирхама за 02/09? Таблица с примером
Используем
VLOOKUP по нужной паре столбцов (даты и значения) именно для AED.
={
"Rate";
LET(
_rows;A2:B20; _cur;Currency!A4:Y; _head;INDEX(_cur;1;);
BYROW(_rows;LAMBDA(r;
LET(
_d;INDEX(r;1;1); _c;INDEX(r;1;2);
IF(_c="";;
LET(
_n;MATCH(_c;_head;0);
IFNA(
VLOOKUP(_d; CHOOSECOLS(_cur; _n+1; _n+2); 2; 1)
)))))))
}
Рассказали в видео, как работает формула и коротко о логике:
_rows— ваши исходные пары (дата; валюта).
_cur— таблица на листе Currency (с заголовками кодов валют в первой строке диапазона).
_head— эта самая строка заголовков, по ней ищем смещение валюты.
Для каждой строки (BYROW): берём дату _d и код _c.
Если код пуст — возвращаем пусто. Иначе находим позицию валюты _n в заголовке и через CHOOSECOLS собираем нужную пару столбцов (дату и значение) именно для этой валюты, после чего VLOOKUP вытягивает курс по дате. IFNA скрывает #N/A, если дата не найдена.
В VLOOKUP(...; ...; 2; 1) последний аргумент 1 — точное совпадение или ближайшее меньшее
⚡️ Друзья, напоминаем про распродажу курсов от маэстро Рената Шагабудинова: