Страницы: 1
RSS
Цикличная универсальная формула для поиска совпадающих значений и подстановки данных
 
Добрый день, есть список позиции одинаковых, нужна формула которая будет проверять позицию и рядом с ней в соседней колонке значение, если пусто то ищем дальше. ВПР и ИНДЕКС не получается. В примере тоже пояснил что нужно.
 
Кирилл ZAK,
в моем понимании так:
Код
=ПРОСМОТР(2;1/(Лист2!$A$2:$A$12=$B2);Лист2!$F$2:$F$12)
 
Не работает, я даже другу формулу просмотра прописал, всё-равно, что-то одно находит, а второе нет. Тут нужна другая хитрость, либо доп формула со строками, либо формула наименьший, где-то там кроется правда.
 
Кирилл ZAK,
она работает так, как нужно, но не факт, что так, как нужно Вам)))
Она вытягивает данные снизу вверх, т.е. последнюю запись по коду и мне это казалось логичным.
Возможно Вам тупо использовать:
Код
=СУММЕСЛИ(Лист2!$A$2:$A$12;$B2;Лист2!$F$2:$F$12)
 
суммесли не подходит, так как эти позиции могут участвовать у других служб и просто про суммируются чужие остатки. Для этого нужно доп. критерии добавлять, таблица большая и постоянно расширяется. Может быть через множество если. В общем нужен правильный цикл.
 
Кирилл ZAK,
Цитата
Кирилл ZAK написал:
суммесли не подходит, так как эти позиции могут участвовать у других служб и просто про суммируются чужие остатки
в первом сообщении об этом ничего не было...

В чем проблема использовать суммеслимн?
 
Здравствуйте.
В вашем файле ошибка, ведь правильный результат остатка по товару 10000050287 =0. Это и показала формула. Следовательно в комент: должно быть = находит. Почему результат должен быть другой?
Попробуйте использовать разницу СУМЕСЛИМН() с учётом всех условий по получению и расходу.
Изменено: gling - 24.08.2022 09:17:38
 
Откройте файл и увидите что, под кодом нси 10000050287 должно быть кол-во 2, а под этим кодом 10000078656 кол-во на остатках 8. Я и прошу экспертов, кто на учит, покажет как сделать из ВПР,ИНДЕКС,ПОИСПОЗ и т. д. цикличную формулу, потому что эти формулы на ходят первый попавшийся из списка код, а дальше не ищет. А надо пройти весь цикл и найти эти остатки где присвоены коды нси.
 
Кирилл ZAK,
поэтому Вам и предложили суммеслимн....
в чем проблема ее использования???

Код
=СУММЕСЛИМН(Лист2!$F$2:$F$12;Лист2!$A$2:$A$12;$B2)
Изменено: evgeniygeo - 24.08.2022 10:16:36
 
Цитата
написал:
суммесли не подходит, так как эти позиции могут участвовать у других служб и просто про суммируются чужие остатки. Для этого нужно доп. критерии добавлять, таблица большая и постоянно расширяется. Может быть через множество если. В общем нужен правильный цикл.

На это я уже отвечал, а во вторых, мне нужно просто для себя знать как с помощью других формул сделать правильный поисковой цикл, а не тупо сумматор, где опять же это не подходит.
 
Цитата
написал:
под этим кодом 10000078656 кол-во на остатках 8
Тогда попробуйте так, но это последний не равный нулю остаток, а последний остаток = 0.
Код
=ИНДЕКС(Лист2!F:F;СУММПРОИЗВ(НАИБОЛЬШИЙ((Лист2!$A$2:$A$12=Лист1!B2)*(Лист2!$F$2:$F$12>0)*СТРОКА(Лист2!$A$2:$A$12);1)))
Изменено: gling - 24.08.2022 10:46:23
 
Цитата
Кирилл ZAK написал:
Для этого нужно доп. критерии добавлять
в чем проблема их добавить в суммеслимн?

Кирилл ZAK,
формула от gling работает корректно? Если строк с остатками будет несколько?

можно еще тупо так посмотреть на проверку каждой ячейки:
Код
=ЕСЛИ((Лист2!$A$2:$A$12=B$6)*(Лист2!$F$2:$F$12>0);Лист2!$F$2:$F$12)
Изменено: evgeniygeo - 25.08.2022 06:50:52
 
evgeniygeo, Спасибо Вам большое, не мог сразу ответить, уезжал в командировку, последнюю формул взял на заметку, не много доработал и получилось как я хотел! Благодарю.
 
А че так можно чтоли? 8-0

Регистрация: 01.01.1970
Изменено: testuser - 28.08.2022 19:22:07
Страницы: 1
Наверх