Подсчёт количества значений в ячейках

Весь MS Office, программирование на Visual Basic for Applications и MS VB

Модератор: Naeel Maqsudov

Ответить
VanBlack
Сообщения: 69
Зарегистрирован: 26 окт 2013, 15:28

Здравствуйте! Возникла такая проблема, - никак не могу составить формулу для подсчёта количества побед (ячейки F4:F19). Формулы для подсчёта призового места (G4:G19) и количества боёв (E4:E19) подобрал, а вот для количества побед никак не получается. Для количества боёв проще, там надо посчитать сколько раз фамилия в этой же строке в столбце "B" повторяется в диапазоне B22:K39. А для количества побед надо сложить все значения в ячейке справа от этой фамилии в том же диапазоне (B22:K39). Как это сделать, никак не пойму. Подскажите пожалуйста, как это сделать? Файл прилагаю.
Вложения
Подсчет количе.zip
(20.76 КБ) 38 скачиваний
Hugo121
Сообщения: 13
Зарегистрирован: 14 авг 2013, 21:34

Код: Выделить всё

=SUMPRODUCT(($B$22:$J$39=B4)*($C$22:$K$39=1))
Аватара пользователя
somewhere
Сообщения: 1858
Зарегистрирован: 31 авг 2006, 17:14
Откуда: 71 RUS
Контактная информация:

Исходя из древовидной структуры данных и выхода в следующий тур победителя, для "не победителей финала" количество побед (КП) = количество боев (КБ) - 1. Для победителей значения КП и КБ совпадают. Поскольку существует отдельный список победителей, то можно реализовать формулой, подобной подсчету КБ только с другим диапазоном.
Теоретически, могла бы подойти функция СУММЕСЛИ, если бы все участники были бы в одном диапазоне, а результаты боев в другом.
В любом случае всегда можно написать макрос
It's a long way to the top if you wanna rock'n'roll
VanBlack
Сообщения: 69
Зарегистрирован: 26 окт 2013, 15:28

Hugo121 писал(а):

Код: Выделить всё

=SUMPRODUCT(($B$22:$J$39=B4)*($C$22:$K$39=1))

Что- то не так. Пишет "недопустимое имя", "не распознанный текст", "не определён". В ячейке с кодом отображает #ИМЯ? Может я что не так делаю?
VanBlack
Сообщения: 69
Зарегистрирован: 26 окт 2013, 15:28

somewhere писал(а):Исходя из древовидной структуры данных и выхода в следующий тур победителя, для "не победителей финала" количество побед (КП) = количество боев (КБ) - 1. Для победителей значения КП и КБ совпадают. Поскольку существует отдельный список победителей, то можно реализовать формулой, подобной подсчету КБ только с другим диапазоном.
В любом случае всегда можно написать макрос

Теоретически, я это понимаю, но как это прописать?
somewhere писал(а):Теоретически, могла бы подойти функция СУММЕСЛИ, если бы все участники были бы в одном диапазоне, а результаты боев в другом.
А если использовать для подсчёта диапазон участника B42:B88, а значения E42:E88?
Hugo121
Сообщения: 13
Зарегистрирован: 14 авг 2013, 21:34

VanBlack писал(а):Что- то не так. Пишет "недопустимое имя", "не распознанный текст", "не определён". В ячейке с кодом отображает #ИМЯ? Может я что не так делаю?

"Недопустимое имя" - ну вероятно Ваш Эксель не говорит по английски :)
Теперь понятно, что очевидно он не английский - но из первого поста это понять ну никак нельзя было. У меня вот Эксель английский - поэтому копипащу как есть, чтоб в переводе не ошибиться.
Переведите, у Вас где-то должен быть файлик FUNCS.xls...
Подскажу, SUMPRODUCT=СУММПРОИЗВ, это если на русский переводить.
А вообще это азы - переводить оригинальные функции на свой локальный язык. Кому-то нужно на немецкий, кому-то на французский... навернка и испанский вариант есть... Куда только жизнь наших не закидывает :)
VanBlack
Сообщения: 69
Зарегистрирован: 26 окт 2013, 15:28

Hugo121 писал(а):...ну вероятно Ваш Эксель не говорит по английски :)

Вот это я лопухнулся! :-) Можно было бы догадаться, но увы... :-) Спасибо большое! Работает! И какая простая формула! Вы даже не представляете, сколько времени я убил на подбор формулы, не зная, как правильно это делается. Примерный вариант моих вычислений:
=ЕСЛИ(B4<>"";ЕСЛИ(G4=1;E4;ЕСЛИ(G4=2;E4-1;ЕСЛИ(G4=3;E4-1;ЕСЛИ(G4=4;E4-2;ЕСЛИ(E4<4;E4-1;"ФБ не завершены")))));0)
Но были и такие, что вспомнить страшно... :-)
Ещё раз спасибо!
Ответить