Здравствуйте,нужно вывести кол-во человек из групп начинающихся с цифры 1. Потом уже в другую ячейку - кол-во человек из групп начинающихся с цифры 2 итд.
Вот часть я уже сделал, =СУММПРОИЗВ((A2:A9<>"")/СЧЁТЕСЛИ(A2:A9;A2:A9&"")) но идет подсчет ТОЛЬКО фамилий из всего диапазона, а мне нужно чтобы еще одно условие выполнялось - человек был из группы, цифра которой начинается на 1.
В принципе, там конечно опечатка (дважды проверял один диапазон), но у меня выдает число. Конкретно под Ваш скрин (формулу вставлять со второй строки):
МВТ,попробуйте применить вашу формулу к файлу который я выложил, у меня 0 получается, причем помоему здесь тоже ошибка - $B$2$B$9 или я не прав? должен выбираться диапазон.
Dubfire, вынужден Вас разочаровать: все работает. Вероятно, Вы не изволили прочесть что и как надо отнимать от СТРОКА(). Файл прикладываю, а то тема разрослась на пустом месте.
Function СЧЁТУНИКЕСЛИ(rng1 As Range, rng2 As Range, kr As Variant) As Double
'аргументы:
'rng1 - диапазон отбора уникальных значений, обязательный
'rng2 - диапазон условий, обязательный
'kr - условие (критерий), обязательный
СЧЁТУНИКЕСЛИ = 0
On Error Resume Next
With New Collection
For Each cl In rng1
If Cells(cl.Row, rng2.Column) Like kr Then
.Add cl, CStr(cl)
If Err = 0 Then
СЧЁТУНИКЕСЛИ = СЧЁТУНИКЕСЛИ + 1
Else
Err.Clear
End If
End If
Next
End With
End Function
Sanja, как понял. По описанию и примеру в приложенном ТС файле, вроде бы, просто подсчет количества людей в той или иной группе. А так, Вы правы - сумбурненько все
Sanja, увы, ТС разрешить нашу дискуссию не желает, покинул нас совершенно по-английски. Засим, предлагаю признать ситуацию несколько неопределенной и флуд прекратить (пока модер не попалил )
Проблема в том что, данный файл сделал как пример. диапазон значений я беру с соседнего листа (=СЧЁТУНИКЕСЛИ(Лист2!A3:A440;Лист2!B3:B440;"1*")), и + ко всему специально взял диапазон с пустыми ячейками, по итогу мне выводит в ячейке - #ИМЯ?, потом я даже взял диапазон без пустых ячеек и все равно выходит тоже самое...
Настоящая проблема в том, что файл-пример изначально должен быть в РЕАЛЬНОЙ СТРУКТУРЕ (не путать с реальными ДАННЫМИ !), как написано в п. 2.3 Правил форума, но почему-то все думают, что помогающие обладают экстрасенсорными способностями и сами догадываются что где и как расположено в реальном файле. СЧЁТУНИКЕСЛИ - это ПОЛЬЗОВАТЕЛЬСКАЯ (не штатная) функция, сиречь - МАКРОС. Как Вы ее использовали?
Согласие есть продукт при полном непротивлении сторон
Sanja,кстати ваша формула - =СУММПРОИЗВ(--($A$2:$A$9<>"");--(ЛЕВСИМВ($B$2:$B$9)=СТРОКА()-8&"")) просто считает кол-во ячеек в столбце B начинающихся с определенной цифрой, а мне же еще нужно чтобы фамилия была уникальна, тоесть из групп начинающихся с цифры 1 только 2 человека по итогу.
Это, кстати, не моя формула. Моя формула в Вашем файле-примере считает кол-во уникальных по условию (группы, начинающиеся на 1 и 2 соответсвенно). См. сообщение №13
Согласие есть продукт при полном непротивлении сторон
Вот по СЧЕТУНИКЕСЛИ работает только в файле который выложили ребята, но почему он не работает в основном моем документе не пойму, диапазоны итд все указываю верно...
Формула массива (ввод Ctrl+Shift+Enter): =СЧЁТ(1/ЧАСТОТА(ЕСЛИ(--ЛЕВСИМВ($B$2:$B$22)=СТРОКА(A1);ПОИСКПОЗ($A$2:$A$22;$A$2:$A$22;));СТРОКА($A$2:$A$22)-1))
vikttur, в оригинальном моем файле пишет что формулы массива в объединенных ячейках неверны. Вы можете подсказать как по СЧЁТУНИКЕСЛИ сделать? вот в том файле что мне давали в нем все работает, в свое оригинальном просто формулу ввожу и не работает...
Sanja,как сделать эту функцию в другом экселевском документе ? и почему если я эту формулу ставлю в ячейку на другой лист, то она не работает? причем я адресую диапазоны показывая что они на другом листе.
см. сообщение #19, а то эта "угадайка" никогда не кончится. Пишите, что у Вас данные на разных листах, а пример с одним. Ну и т.д. Там и про функцию написано. Что это по сути МАКРОС!