Как посчитать количество отличников в excel
Есть диапазон с данными, в котором некоторые значения повторяются больше одного раза:
Задача - подсчитать количество уникальных (неповторяющихся) значений в диапазоне. В приведенном выше примере, как легко заметить, на самом деле упоминаются всего четыре варианта.
Рассмотрим несколько способов ее решения.
Способ 1. Если нет пустых ячеек
Если вы уверены, что в исходном диапазоне данных нет пустых ячеек, то можно использовать короткую и элегантную формулу массива:
Не забудьте ввести ее как формулу массива, т.е. нажать после ввода формулы не Enter, а сочетание Ctrl+Shift+Enter.
Технически, эта формула пробегает по всем ячейкам массива и вычисляет для каждого элемента количество его вхождений в диапазон с помощью функции СЧЕТЕСЛИ (COUNTIF) . Если представить это в виде дополнительного столбца, то выглядело бы оно так:
Потом вычисляются дроби 1/Число вхождений для каждого элемента и все они суммируются, что и даст нам количество уникальных элементов:
Способ 2. Если есть пустые ячейки
Если в диапазоне встречаются пустые ячейки, то придется немного усовершенствовать формулу, добавив проверку на пустые ячейки (иначе получим ошибку деления на 0 в дроби):
Ссылки по теме
Доброго времени суток, могли бы вы, для новичка, разобрать данную формулу, начиная со знака крышки.=СУММПРОИЗВ(СЧЁТЕСЛИ(A2:A10;A2:A10)^(2*ЕПУСТО(A2:A10)-1))
Для полного диапазона:
Для диапазона с пустыми ячейками:
Я сделал так.
1) В отдельной колонке вывел результат 1/Число вхождений, как на последней картинке в Способ 1
2) На эту колонку наложил функцию =ПРОМЕЖУТОЧНЫЕ.ИТОГИ(109; колонка )
В результате, когда применяю фильтр, получаю суммарное количество уникальных значений.
Недостаток один - если фильтр наложить по другим полям, получим неверное отображение количества уникальных значений.
Буквально вчера бился с этой задачей, но вроде бы победил Допустим, что в указанном примере в столбце "B" стоит требуемый нам дополнительный параметр, например "цвет". Тогда формула будет выглядеть следующим образом:
У меня данная формула выдает неправильный результат.
Вот что нашел на соседнем сайте. Эта формула у меня работет.
Тот же вопрос, например мне нужно посчитать кол-во уникальных значений, при том в определенном диапазоне дат.
Например Таблица содержит наименования продуктов и даты их выпуска )) Подскажите.. )8)
Дат в 2014 году было много, машин - тоже.
Заранее спасибо!
Гос.№ авто | № ТТН | Дата |
Т 240РВ | 403826/12 | 01.03.2014 |
Т 240РВ | 403826/12 | 01.03.2014 |
Т 240РВ | 403826/12 | 01.03.2014 |
С 215ВН | 403825/14 | 04.03.2014 |
С 215ВН | 403825/14 | 04.03.2014 |
С 215ВН | 403825/14 | 04.03.2014 |
С 215ВН | 403825/14 | 04.03.2014 |
С 215ВН | 403825/14 | 04.03.2014 |
С 215ВН | 403825/14 | 04.03.2014 |
С 215ВН | 403825/14 | 04.03.2014 |
С 215ВН | 403825/14 | 04.03.2014 |
С 215ВН | 403825/14 | 04.03.2014 |
С 215ВН | 403825/14 | 04.03.2014 |
Т 118ЕЕ | 14/2-2 | 06.03.2014 |
Т 118ЕЕ | 14/2-2 | 06.03.2014 |
Если версия более древняя, то прогнать список сначала через удаление дубликатов ( Данные - Удалить дубликаты ) с галочками Гос.№ и Дата, а потом построить сводную (Даты закинуть в строки, а Гос№ в значения).
Остался момент: в сводной таблице не получается найти кнопку "Уникальные значения". У меня 2013 эксель. Андрей, когда строите сводную, то обязательно установите флажок Добавить в модель данных .
Потом в сводной щелкаете правой по полю значений - Параметры поля - Операции - Число различных элементов.
Гос.№ авто | Дата | Кол-во дат | Кол-во машин |
Т 240РВ | 01.03.2014 | 1 | |
Т 240РВ | 01.03.2014 | ||
Т 240РВ | 01.03.2014 | ||
Т 240РВ | 01.03.2014 | 1 | |
С 215ВН | 04.03.2014 | 2 | |
С 215ВН | 04.03.2014 | ||
С 215ВН | 04.03.2014 | ||
С 215ВН | 04.03.2014 | ||
С 2155ВН | 04.03.2014 | ||
С 215ВН | 04.03.2014 | ||
С 215ВН | 04.03.2014 | ||
С 215ВН | 04.03.2014 | ||
С 215ВН | 04.03.2014 | ||
С 215ВН | 04.03.2014 | 1 | |
Т 118ЕЕ | 06.03.2014 | 3 | |
Т 118ЕЕ | 06.03.2014 | ||
Т 118ЕЕ | 06.03.2014 | ||
О 754ТМ | 06.03.2014 | ||
О 754ТМ | 06.03.2014 | ||
О 754ТМ | 06.03.2014 | ||
О 754ТМ | 06.03.2014 | 1 | |
В 093ЕЕ | 07.03.2014 | 4 | |
В 093ЕЕ | 07.03.2014 | ||
В 093ЕЕ | 07.03.2014 | ||
В 093ЕЕ | 07.03.2014 | ||
В 093ЕЕ | 07.03.2014 | ||
В 093ЕЕ | 07.03.2014 | ||
В 093ЕЕ | 07.03.2014 | ||
В 093ЕЕ | 07.03.2014 | ||
В 093ЕЕ | 07.03.2014 | ||
В 093ЕЕ | 07.03.2014 | 1 | |
<=ЕСЛИ(G4<>"";СЧЁТЕСЛИ(ИНДЕКС(A1:A$2;ПОИСКПОЗ("ххх";G1:G$2)):A1;"<>"&A1:A$2);"" > |
Подскажите пожалуйста, как решить задачку. У меня к сожалению не получается самостоятельно. У меня на 35 тыс. строк (Офис 2013) не работает, выдает "0". При этом, ограничив в этом же массиве до 1500 строк, считает корректно Ребят, а как просчитать значения которые повторяются, чтобы указывалось не общее количество, а порядочное, нп: Имя Подсчет Вместо такого, что выдает формула "счетесли" Имя Подсчет Есть ещё один замечательный способ, как можно посчитать уникальные значения. С помощью функции ЧАСТОТА: И что ещё интереснее, так можно считать уникальные значения при наличии условия. Например, если в столбце B были бы названия магазинов (где, например, есть в наличии эти фрукты), можно написать формулу, считающую количество уникальных фруктов в данном магазине:
В продолжение темы, ещё один вариант подсчёта уникальных значений. Сначала сортируем диапазон A1:A10 по возрастанию (или по убыванию, не важно). Потом вводим такую формулу массива: В этом варианте преимущество в том, что расчёт происходит очень быстро, даже если в исходнике много тысяч строк. С пропуском пустых ячеек и в немассивной форме:=СУММПРОИЗВ((A2:A10<>A1:A9)*(A2:A10<>"")
Должно получиться что-то типа такого:
Проблема в том, что надо искать каждое найденное в одном из двух столбцов по обоим столбцам. Если искать сначала в одном, затем во втором, затем сложить - по некоторым пунктам будет задвоение. Имеем таблицу по продажам, например, следующего вида: Задача: просуммировать все заказы, которые менеджер Григорьев реализовал для магазина "Копейка". Способ 1. Функция СУММЕСЛИ, когда одно условиеЕсли бы в нашей задаче было только одно условие (все заказы Петрова или все заказы в "Копейку", например), то задача решалась бы достаточно легко при помощи встроенной функции Excel СУММЕСЛИ (SUMIF) из категории Математические (Math&Trig) . Выделяем пустую ячейку для результата, жмем кнопку fx в строке формул, находим функцию СУММЕСЛИ в списке: Жмем ОК и вводим ее аргументы:
Способ 2. Функция СУММЕСЛИМН, когда условий многоЕсли условий больше одного (например, нужно найти сумму всех заказов Григорьева для "Копейки"), то функция СУММЕСЛИ (SUMIF) не поможет, т.к. не умеет проверять больше одного критерия. Поэтому начиная с версии Excel 2007 в набор функций была добавлена функция СУММЕСЛИМН (SUMIFS) - в ней количество условий проверки увеличено аж до 127! Функция находится в той же категории Математические и работает похожим образом, но имеет больше аргументов: При помощи полосы прокрутки в правой части окна можно задать и третью пару (Диапазон_условия3-Условие3), и четвертую, и т.д. - при необходимости. Если же у вас пока еще старая версия Excel 2003, но задачу с несколькими условиями решить нужно, то придется извращаться - см. следующие способы. Способ 3. Столбец-индикаторДобавим к нашей таблице еще один столбец, который будет служить своеобразным индикатором: если заказ был в "Копейку" и от Григорьева, то в ячейке этого столбца будет значение 1, иначе - 0. Формула, которую надо ввести в этот столбец очень простая: =(A2="Копейка")*(B2="Григорьев") Логические равенства в скобках дают значения ИСТИНА или ЛОЖЬ, что для Excel равносильно 1 и 0. Таким образом, поскольку мы перемножаем эти выражения, единица в конечном счете получится только если оба условия выполняются. Теперь стоимости продаж осталось умножить на значения получившегося столбца и просуммировать отобранное в зеленой ячейке: Способ 4. Волшебная формула массиваЕсли вы раньше не сталкивались с такой замечательной возможностью Excel как формулы массива, то советую почитать предварительно про них много хорошего здесь. Ну, а в нашем случае задача решается одной формулой: =СУММ((A2:A26="Копейка")*(B2:B26="Григорьев")*D2:D26) После ввода этой формулы необходимо нажать не Enter , как обычно, а Ctrl + Shift + Enter - тогда Excel воспримет ее как формулу массива и сам добавит фигурные скобки. Вводить скобки с клавиатуры не надо. Легко сообразить, что этот способ (как и предыдущий) легко масштабируется на три, четыре и т.д. условий без каких-либо ограничений. Способ 4. Функция баз данных БДСУММВ категории Базы данных (Database) можно найти функцию БДСУММ (DSUM) , которая тоже способна решить нашу задачу. Нюанс состоит в том, что для работы этой функции необходимо создать на листе специальный диапазон критериев - ячейки, содержащие условия отбора - и указать затем этот диапазон функции как аргумент: Стипендиальная ведомость факультета представляет собой ЭТ Excel , содержащую 5 рабочих листов. Соответственно Лист 1 – курс 1, Лист 2 – курс 2 и т. д. На каждом рабочем листе составлены списки двух групп по 25 человек. Каждая таблица содержит следующие поля: №п\п, ФИО, оценки по пяти предметам, средний балл, успеваемость, стипендия, стипендия с надбавкой хорошистам и отличникам, стипендия с надбавкой из дополнительного фонда. Поля: №п\п, ФИО, оценки по пяти предметам заполняются, остальные поля расчетные. (пример на рисунке) УспеваемостьУспеваемость студентов определяется по следующей схеме: если средний балл 4,75 и выше, присваивается категория «отличник», если в промежутке от 3,75 до 4,75 – «хорошист», в промежутке от 2,5 до 3,75 – «троечник», если средний балл меньше 2,5 – «неуспевающий». Для расчета успеваемости используется логическая функция ЕСЛИ. Данная функция включает в себя три Условия, три Истины и Ложь. Выглядит следующим образом: Условие1 – средний балл >=4,75; ему соответствует Истина1 «отличник»; Условие2 – средний балл >=3,75; ему соответствует Истина2 «хорошист»; Условие3 – средний балл >=2,5; ему соответствует Истина3 «троечник»; Ложью является значение «неуспевающий». СтипендияВ условии задачи заявлено, что стипендия студентам, чей балл меньше 3,5 не начисляется. Стипендия остальным студентам составляет 460 руб. Для назначения стипендии используется логическая функция ЕСЛИ. Данная функция включает в себя одно Условие, Истину и Ложь. Выглядит следующим образом: Условие – средний балл <3,5; Стипендия с надбавкой хорошистам и отличникамСтудентам, имеющим категорию успеваемости «хорошист» или «отличник», назначается надбавка в размере 10% от стипендии. Для расчета стипендии с надбавкой используется логическая функция ЕСЛИ. Данная функция включает в себя два Условия, одну Истину и Ложь. Выглядит следующим образом: Условие1 – категория «отличник»; Условие2 – категория «хорошист»; Истина – стипендия с надбавкой 10%; Стипендия с доп.надбавкойВсему факультету дополнительно выделили 50% стипендиального фонда. Необходимо распределить его между отличниками. Для выполнения данных расчетов необходимо: Вставить дополнительный лист в рабочую книгу, назвать его «общий фонд». Рассчитать величину стипендиального фонда каждой группы. Для этого внизу каждой таблицы, в поле Стипендия с надбавкой хор и отл, вставить функцию СУММ. Рассчитать первоначальный стипендиальный фонд. Для этого используется Консолидация данных, расположенная на ленте Данные. Откроется окно, в котором необходимо выбрать действие – Сумма, далее необходимо по очереди Добавить ссылки на ячейки, содержащие итоговые значения фондов по каждой группе. После нажатия ОК в ячейке появится сумма стипендиальных фондов групп. Щелкнув слева от рабочего поля на символе +, можно увидеть список чисел, являющихся фондами этих групп. Рассчитать дополнительный фонд, умножив общий фонд на 50% Рассчитать количество отличников на факультете. Для этого необходимо воспользоваться функцией СЧЁТЕСЛИ, выбрав ее в категории статистические. На втором шаге Мастера функций указать диапазон ячеек первой таблицы, содержащей информацию о категории успеваемости. Критерий для отбора указать «отличник». Т.к. у нас на рабочем листе две таблицы, для расчета общего количества отличников на курсе необходимо суммировать две функции СЧЁТЕСЛИ. Далее необходимо выполнить вычисления по каждому курсу отдельно. Таблица в режиме отображения формул выглядит следующим образом Рассчитать общее количество отличников. Для этого вставить функцию СУММ внизу таблицы. Рассчитать величину надбавки каждому отличнику. Для этого необходимо дополнительный фонд разделить на количество отличников. Рассчитать Стипендию с доп.надбавкой. Для этого используется условная функция ЕСЛИ. Данная функция включает в себя одно Условие, Истину и Ложь. Выглядит следующим образом: Условие – категория успеваемости студента - «отличник»; Истина – стипендия с дополнительной надбавкой (ссылке на ячейку, содержащую доп.надбавку, присваивается абсолютное значение – клавишей F 4); Ложь – стипендия без изменений. Для построения диаграммы, отображающей стипендиальные фонды групп факультета, необходимо воспользоваться данными на листе «общий фонд». Читайте также:
|