Страницы: 1
RSS
Поиск наименьшего или наибольшего курса валюты в диапазоне дат в таблице обновляемой на основе Веб-запроса
 
Доброго времени суток!

Есть файл с обновляемой таблицей на основе Веб-запроса с сайта ЦБ созданный на основе примера с этого сайта. Как найти наименьший курс между двумя датами?
 
Код
{=1/МАКС(ЕСЛИОШИБКА(1/(C29:C304 * (A29:A304 >= I4) * (A29:A304 <= I5));0))}
 
Здрасьте. Такой вариант проверьте.
Код
=МИН(ДВССЫЛ("C"&ПОИСКПОЗ(I4;A29:A304;0)+28&":C"&ПОИСКПОЗ(I5;A29:A304;0)+28))
Изменено: Bema - 16.02.2017 17:23:31 (Подправил формулу. Не учел, что ПОИСКПОЗ выдает относительную позицию в массиве.)
Если в мире всё бессмысленно, — сказала Алиса, — что мешает выдумать какой-нибудь смысл? ©Льюис Кэрролл
 
Для Excel 2010+ формула
Код
=AGGREGATE(15;6;C29:C304/(I4<A29:A304)/(I5>A29:A304);1)
Код
=АГРЕГАТ(15;6;C29:C304/(I4<A29:A304)/(I5>A29:A304);1)
 
jakim, спасибо, к сожалению на работе 2007. Новее не ставят:(

vladjuha, Bema, супер, работает. Единственное что - это таблица динамическая, т.е. при обновлении она добавляет строки с курсами вниз - можно ли как то в формулах предусмотреть расширение диапазона. Пробовал ставить диапазон с заделом на будущее на пару сотен строк - выдает ошибку.
 
Цитата
puplin написал:
можно ли как то в формулах предусмотреть расширение диапазона
В случае предложенной мною формулы, диапазон определять не надо, он уже есть - cbr
А сама формула станет такой:
Код
{=1/МАКС(ЕСЛИОШИБКА(1/ИНДЕКС(cbr;;3)/(ИНДЕКС(cbr;;1)>= I4)/(ИНДЕКС(cbr;;1)<= I5);0))}
Изменено: vladjuha - 16.02.2017 20:20:07
 
Отлично, премного благодарен.
 
Для 2007 екселя
Наименьшее значение
Код
=LARGE(INDEX(C29:C304*(A29:A304>=I4)*(A29:A304<=I5);0);SUMPRODUCT((A29:A304>=I4)*(A29:A304<=I5)))
Наибольшее значение
Код
=LARGE(INDEX(C29:C304*(A29:A304>=I4)*(A29:A304<=I5);0);1)
Страницы: 1
Наверх