Страницы: 1
RSS
Поиск и присвоение цены по будущей дате, в обратном случае присвоение последней цены
 
Добрый вечер,

Не получается решить задачу.
Есть таблица 1, где есть поля завод, товар, дата конкурса.
Есть таблица 2, где есть такие же поля но даты не совпадают.

Нужно по совпадению завода и товара по ближайшей будущей дате присвоить цену из таб2 в таб1, если будущей даты нет, то присвоить последнюю актуальную цену.
Прикладываю пример.
 
видимо, нет быстрого решения...
 
adike, прошло 30 минут) имейте терпение)
Не бойтесь совершенства. Вам его не достичь.
 
Для F3 ввести и протянуть вниз:
=ИНДЕКС($L:$L;АГРЕГАТ(14;6;СТРОКА($L$3:$L$9)/($I$3:$I$9=$C3)/($J$3:$J$9=$D3)/($K$3:$K$9=ЕСЛИОШИБКА(АГРЕГАТ(14;6;$K$3:$K$9/($I$3:$I$9=$C3)/($J$3:$J$9=$D3)/($K$3:$K$9<=$E3);1);АГРЕГАТ(15;6;$K$3:$K$9/($I$3:$I$9=$C3)/($J$3:$J$9=$D3)/($K$3:$K$9>$E3);1)));1))
или так (сначала ближайшую большую, а после ближайшую меньшую или равную):
=ИНДЕКС($L:$L;АГРЕГАТ(14;6;СТРОКА($L$3:$L$9)/($I$3:$I$9=$C3)/($J$3:$J$9=$D3)/($K$3:$K$9=ЕСЛИОШИБКА(АГРЕГАТ(15;6;$K$3:$K$9/($I$3:$I$9=$C3)/($J$3:$J$9=$D3)/($K$3:$K$9>$E3);1);АГРЕГАТ(14;6;$K$3:$K$9/($I$3:$I$9=$C3)/($J$3:$J$9=$D3)/($K$3:$K$9<=$E3);1)));1))
Изменено: JayBhagavan - 12.11.2018 18:03:11

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
adike, здесь не служба быстрого реагирования техподдержки.
 
Вариант:
Код
=ЕСЛИОШИБКА(НАИМЕНЬШИЙ(($I$3:$I$9=C3)*($J$3:$J$9=D3)*($K$3:$K$9>E3)*($L$3:$L$9);СУММ(--((($I$3:$I$9=C3)*($J$3:$J$9=D3)*($K$3:$K$9>E3)*($L$3:$L$9))=0))+1);ИНДЕКС($L$3:$L$9;ПОИСКПОЗ(НАИБОЛЬШИЙ(($I$3:$I$9=C3)*($J$3:$J$9=D3)*($K$3:$K$9<E3)*($K$3:$K$9);1);($I$3:$I$9=C3)*($J$3:$J$9=D3)*($K$3:$K$9<E3)*($K$3:$K$9);0);1))
Кому решение нужно - тот пример и рисует.
 
Массивная
=SUMIFS($L$3:$L$9;$K$3:$K$9;IFERROR(1/(1/MIN(IF(($I$3:$I$9=C16)*($J$3:$J$9=D16)*($K$3:$K$9>E16);$K$3:$K$9)));MAX(IF(($I$3:$I$9=C16)*($J$3:$J$9=D16)*($K$3:$K$9<=E16);$K$3:$K$9)));$J$3:$J$9;D16;$I$3:$I$9;C16)
По вопросам из тем форума, личку не читаю.
 
JayBhagavan, первая формула работает не корректно, в примере 4ое значение выдает другой результат. А вторая формула огонь! большое спасибо.
Пытливый, ваша формула выдает ошибку. тем не менее, спасибо за уделенное время.
vikttur, a.i.mershik, прошу прощения, эт я от безысходности ))).
 
Она массивная, а не ошибку выдает. :)
Кому решение нужно - тот пример и рисует.
 
Прошу прощения, не допер с первого раза ))).
Страницы: 1
Наверх