Страницы: 1
RSS
Номер вхождения позиции при выполнении условия
 
Уважаемые гуру форума, подскажите как решить проблему. Ситуация такая: в ячейках А1:А5 находятся позиции товара, в ячейках В1:В5 могут находиться отметки. Необходимо найти НОМЕР вхождения позиции, имеющей отметку при подсчете количества этих позиций. Поясню, что имел ввиду. Если подсчитать количество слова "проба" в прилагаемом примере функцией СЧЕТЕСЛИ - получим 3, если использовать СЧЕТЕСЛИМН - получим 1. А необходимо найти номер очередности того слова в диапазоне, который имеет отметку, т.е. в данном случае - 2. Простите за "кривизну" объяснения, но никак по другому не формулируется вопрос. Заранее спасибо всем откликнувшимся.
 
Код
=ПОИСКПОЗ(C1;A1:A5;0)

Это?
Кому решение нужно - тот пример и рисует.
 
Нет, Пытливый, к сожалению не это. Ваша формула не учитывает отметки и, если например перенести отметку в ячейку В5, результат останется прежним (равным 2, а это будет уже 3-е вхождение). Попробую еще раз сформулировать свой вопрос, может прямее получится . Необходимо подсчитать количество совпадений указанного слова (в примере) до первой отметки
 
А... ну тогда вот это:
Код
=СЧЁТЕСЛИ(СМЕЩ($A$1;0;0;ПОИСКПОЗ("В";B:B;0);1);$C$1)
Кому решение нужно - тот пример и рисует.
 
Пытливый, я уже успел обрадоваться что получил ответ на свой вопрос, но при проверке вылез вопрос. Мой реальный файл, разумеется, намного сложнее файла-примера, но я уж совсем его упростил, с перебором. Сейчас, когда я для проверки, немного приблизил его к реальному виду файла выяснилось: на листе "Приход" Ваша формула правильно считает количество повторов для "проба/12", но почему-то считает количество и для "стол/13", хотя у этой позиции на листе "Расход" отсутствуют отметки, почему? И ведь для других позиций не считает! И на реальном файле к сожалению формула считает неправильно:cry:
Изменено: plex - 07.04.2015 20:49:51
 
Я формулу рисовал "до отметки", т.е. с начала таблицы до отметки - вот диапазон, где считаются соответствующие повторения.
Если требуется посчитать только то значение, возле которого стоит отметка (причем отметка стоит только у одного экземпляра этого значения, а не у каждого), тогда моя формула не подходит.
Я как-то даже затрудняюсь - можно ли вообще это формулами решать. Сейчас попробую...

З.Ы.
Вот. Как-то монструозно очень получилось.
Код
=ЕСЛИ(A2<>ДВССЫЛ(АДРЕС(ПОИСКПОЗ("В";Расход!$C:$C;0);2;4;1;"Расход"));0;СЧЁТЕСЛИ(СМЕЩ(Расход!$B$2;0;0;ПОИСКПОЗ("В";Расход!C:C;0);1);ДВССЫЛ(АДРЕС(ПОИСКПОЗ("В";Расход!$C:$C;0);2;4;1;"Расход"))))
Изменено: Пытливый - 07.04.2015 22:46:03
Кому решение нужно - тот пример и рисует.
 
А у меня самого вот какой вариант получился (формула массива):
Код
=СМЕЩ(ИНДЕКС(Расход!$B$2:$B$6;НАИМЕНЬШИЙ(ЕСЛИ(Приход!A6=Расход!$B$2:$B$6;ЕСЛИ(Расход!$C$2:$C$6="В";СТРОКА(Расход!$B$2:$B$6)-1));1));0;1)
Правда в реальном файле на 5000 строк, находясь внутри другой формулы, этот вариант прилично нагружает ПК:(. Обязательно проверю на нагрузку Ваш вариант.
Страницы: 1
Наверх