Подсчет количества вхождений значения
Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Excel 2016 Excel 2016 для Mac Excel 2013 Excel 2010 Excel 2007 Excel для Mac 2011 Еще…Меньше
Предположим, что нужно определить, сколько раз встречается конкретный текст или число в диапазоне ячеек. Например:
-
Если диапазон, например A2:D20, содержит числовые значения 5, 6, 7 и 6, то число 6 встречается два раза.
-
Если столбец содержит поговорки «Климов», «Наворов», «Наворов» и «Наворов», то этот столбец встречается три раза.
Подсчитать количество вхождений значения можно несколькими способами.
Используйте функцию СЧЁТЕСЛИ, чтобы узнать, сколько раз встречается определенное значение в диапазоне ячеек.
Дополнительные сведения см. в статье Функция СЧЁТЕСЛИ.
Функция СЧЁТЕСЛИМН аналогична функции СЧЁТЕСЛИ с одним важным исключением: СЧЁТЕСЛИМН позволяет применить критерии к ячейкам в нескольких диапазонах и подсчитывает число соответствий каждому критерию. С функцией СЧЁТЕСЛИМН можно использовать до 127 пар диапазонов и критериев.
Синтаксис функции СЧЁТЕСЛИМН имеет следующий вид:
СЧЁТЕСЛИМН(диапазон_условия1;условие1;[диапазон_условия2;условие2];…)
См. пример ниже.
Дополнительные сведения об использовании этой функции для подсчета вхождений в нескольких диапазонах и с несколькими условиями см. в статье Функция СЧЁТЕСЛИМН.
Предположим, вам нужно определить, сколько продавцов продало определенный товар в определенном регионе или сколько продаж было сделано конкретным продавцом. Функции ЕСЛИ и СЧЁТ можно использовать вместе. то есть сначала для проверки условия используется функция ЕСЛИ, а затем, только если функция ЕСЛИ имеет истинное положение, для подсчета ячеек используется функция СЧЁТ.
Примечания:
-
Формулы в этом примере должны быть введены как формулы массива.
-
Если у вас установлена текущая версия Microsoft 365, можно просто ввести формулу в верхней левой ячейке диапазона вывода и нажать клавишу ВВОД, чтобы подтвердить использование формулы динамического массива.
-
Если вы открыли эту книгу в Excel для Windows или Excel 2016 для Mac и хотите изменить формулу или создать похожую, нажмите F2,а затем нажмите CTRL+SHIFT+ВВОД, чтобы формула возвращала нужные результаты. В более ранних версиях Excel для Mac используйте клавиши +SHIFT+ВВОД.
-
-
Чтобы эти примеры формул работали, вторым аргументом функции ЕСЛИ должно быть число.
Дополнительные сведения об этих функциях см. в статьях Функция СЧЁТ и Функция ЕСЛИ.
В следующих примерах функции ЕСЛИ и СУММ используются вместе. Функция ЕСЛИ сначала проверяет значения в определенных ячейках, а затем, если возвращается значение ИСТИНА, функция СУММ складывает значения, удовлетворяющие условию.
Примечания: Формулы, приведенные в этом примере, должны быть введены как формулы массива.
-
Если у вас установлена текущая версия Microsoft 365, можно просто ввести формулу в верхней левой ячейке диапазона вывода и нажать клавишу ВВОД, чтобы подтвердить использование формулы динамического массива.
-
Если вы открыли эту книгу в Excel для Windows или Excel 2016 для Mac и хотите изменить формулу или создать похожую, нажмите F2,а затем нажмите CTRL+SHIFT+ВВОД, чтобы формула возвращала нужные результаты. В более ранних версиях Excel для Mac используйте клавиши +SHIFT+ВВОД.
Пример 1
Функция выше означает, что если диапазон C2:C7 содержит значения Шашков и Туманов, то функция СУММ должна отобразить сумму записей, в которых выполняется условие. Формула найдет в данном диапазоне три записи для «Шашков» и одну для «Туманов» и отобразит 4.
Пример 2
Функция выше означает, что если ячейка D2:D7 содержит значения меньше 9 000 ₽ или больше 19 000 ₽, то функция СУММ должна отобразить сумму всех записей, в которых выполняется условие. Формула найдет две записи D3 и D5 со значениями меньше 9 000 ₽, а затем D4 и D6 со значениями больше 19 000 ₽ и отобразит 4.
Пример 3
Функция выше сообщает, что если в функции D2:D7 есть счета для записи «Иванов» на сумму менее 9 000 рублей, то функция СУММ должна отобразить сумму записей, в которых условие должно быть выполнены. Формула найдет ячейку C6, которая соответствует условию, и отобразит 1.
Вы можете использовать совокупные значения для отображения итогов и подсчета количества уникальных значений. Сводная таблица — это интерактивный способ быстрого суммирования больших объемов данных. Вы можете использовать ее для развертывания и свертывания уровней представления данных, чтобы получить точные сведения о результатах и детализировать итоговые данные по интересующим вопросам. Кроме того, можно перемещать строки в столбцы или столбцы в строки («сводить» их) для просмотра количества вхождений значения в сводной таблице. Рассмотрим пример электронной таблицы «Продажи», в которой можно подсчитать количество значений продаж для разделов «Гольф» и «Теннис» за конкретные кварталы.
-
Введите данные в электронную таблицу Excel.
-
Выделите диапазон A2:C8
-
Выберите Вставка > Сводная таблица.
-
В диалоговом окне «Создание сводной таблицы» установите переключатель Выбрать таблицу или диапазон, а затем — На новый лист и нажмите кнопку ОК.
Пустая сводная таблица будет создана на новом листе.
-
В области «Поля сводной таблицы» выполните одно из указанных ниже действий.
-
Перетащите элемент Спорт в область Строки.
-
Перетащите элемент Квартал в область Столбцы.
-
Перетащите элемент Продажи в область Значения.
-
Повторите третье действие.
Имя поля Сумма_продаж_2 отобразится и в области «Сводная таблица», и в области «Значения».
На этом этапе область «Поля сводной таблицы» будет выглядеть так:
-
В области Значения щелкните стрелку раскрывающегося списка рядом с полем Сумма_продаж_2 и выберите пункт Параметры поля значений.
-
В диалоговом окне Параметры поля значений выполните указанные ниже действия.
-
На вкладке Операция выберите пункт Количество.
-
В поле Пользовательское имя измените имя на Количество.
-
Нажмите кнопку ОК.
-
Сводная таблица отобразит количество записей для разделов «Гольф» и «Теннис» за кварталы 3 и 4, а также показатели продаж.
-
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
См. также
Полные сведения о формулах в Excel
Рекомендации, позволяющие избежать появления неработающих формул
Поиск ошибок в формулах
Сочетания клавиш и горячие клавиши в Excel
Функции Excel (по алфавиту)
Функции Excel (по категориям)
Нужна дополнительная помощь?
Skip to content
Зачем считать дубликаты? Мы можем получить ответ на множество интересных вопросов. К примеру, сколько клиентов сделало покупки, сколько менеджеров занималось продажей, сколько раз работали с определённым поставщиком и т.д. Если вы хотите посчитать точное количество повторяющихся записей на листе Excel, используйте один из следующих способов для подсчета дубликатов.
- Подсчет количества каждого из дубликатов.
- Считаем общее количество дубликатов в столбце.
- Количество совпадений по части ячейки.
- Как посчитать количество дубликатов внутри ячейки.
- Подсчет дубликатов строк.
Подсчет количества каждого из дубликатов.
Если у вас, к примеру, есть столбец с наименованиями товаров, вам часто может понадобиться узнать, сколько дубликатов имеется для каждого из них.
Чтобы узнать, сколько раз та или иная запись встречается в вашей рабочей таблице Excel, используйте простую формулу COUNTIF, где A2 — первый, а A8 — последний элемент списка:
=СЧЁТЕСЛИ($A$2:$A$17;A2)
Как показано на следующем снимке экрана, программа подсчитывает вхождения каждого элемента: «Fanta» встречается 2 раза, «Sprite» — 3 раза, и так далее.
Если вы хотите указать на 1- е , 2- е , 3- е и т. д. появление каждого элемента, используйте:
=СЧЁТЕСЛИ($A$2:$A2;A2)
Мы отметили на рисунке первое, второе и третье появление Sprite.
Аналогичным образом вы можете посчитать количество повторяющихся строк. Единственное отличие состоит в том, что вам нужно будет использовать функцию СЧЁТЕСЛИМН() вместо СЧЁТЕСЛИ(). Например:
=СЧЁТЕСЛИМН($A$2:$A$17;A2;$B$2:$B$17;B2;$C$2:$C$17;C2)
На скриншоте мы отметили одинаковые строки.
После подсчета повторяющихся значений вы можете скрыть уникальные и просматривать только одинаковые, или наоборот. Для этого примените автофильтр Excel.
Считаем общее количество дубликатов в столбце.
Самый простой способ подсчета повторений в столбце — это использовать любую из формул, которые мы использовали для идентификации дубликатов в Excel (ссылки смотрите в конце этой статьи). И затем вы можете подсчитать повторы:
=СЧЁТЕСЛИ(диапазон, «Дубликат»)
Пересчитываем метки, которые вы использовали для поиска дубликатов.
В этом примере наше выражение принимает следующую форму:
=СЧЁТЕСЛИ(B2:B17;»Дубликат»)
Еще один способ подсчета числа повторений в Excel — с использованием более сложной формулы массива. Преимущество этого подхода в том, что он не требует вспомогательного столбца:
{=ЧСТРОК($A$2:$A$17)-СУММ(ЕСЛИ(СЧЁТЕСЛИ($A$2:$A$17;$A$2:$A$17)=1;1;0))}
Поскольку это формула массива, не забудьте нажать Ctrl + Shift + Enter, чтобы завершить ввод.
Кроме того, имейте в виду, что она подсчитывает все повторяющиеся записи, включая первые вхождения:
Можно обойтись и без формулы маиисва:
=СУММПРОИЗВ(—(СЧЁТЕСЛИ(A2:A17;A2:A17)>1))
Это работает и с текстом, и с числами, а пустые ячейки игнорируются, что также очень полезно.
Теперь давайте посчитаем количество дубликатов без учета их первого появления в таблице.
Здесь также есть два способа. Первый – с использованием вспомогательного столбца В.
В столбце B проставляем соответствующие отметки, как мы это уже не раз делали.
=ЕСЛИ(СЧЁТЕСЛИ($A$2:$A2; A2)>1;»Дубликат»;»»)
Далее определяем количество ячеек, содержимое которых встречается не в первый раз:
=СЧЁТЕСЛИ(B2:B17;»Дубликат»)
или формула массива
{=СЧЁТЗ(A2:A17)-СУММ(1/СЧЁТЕСЛИ(A2:A17;A2:A17))}
Ну а можно пойти от обратного. Считаем количество уникальных записей вот таким простым и элегантным способом:
{=СУММ(1/СЧЁТЕСЛИ(A2:A17;A2:A17))}
Возможно,вам эта формула массива будет полезна при подсчете уникальных значений.
Ну а теперь школьная задачка: если у нас всего 16 слов (можно использовать функцию СЧЁТЗ), и из них 10 – уникальных, то сколько будет неуникальных? Правильно – 6!
Количество совпадений по части ячейки.
Предположим, у нас в ячейке записано не только название товара, но и другая дополнительная информация: товарная группа, номер счёта, единицы измерения и т.п. Как в этом случае подсчитать число упоминаний определённого товара?
Будем проверять часть содержимого, используя функцию СЧЕТЕСЛИ и знаки подстановки.
Делаем это так:
=СЧЁТЕСЛИ($A$2:$A$17;»*»&C2&»*»)
Ищем любое вхождение искомого слова при помощи знаков подстановки “*”.
Как посчитать количество дубликатов внутри ячейки.
Случается, что список находится вовсе не в таблице, а в одной ячейке ($A$2):
Рассмотренные нами выше приемы здесь точно не сработают. Но в Excel хватает других возможностей, и все можно сделать так же достаточно просто:
=(ДЛСТР($D$1)-ДЛСТР(ПОДСТАВИТЬ($D$1;D3;»»)))/ДЛСТР(D3)
При помощи ДЛСТР считаем количество символов в ячейке со списком товаров ($A$2)
Затем при помощи ПОДСТАВИТЬ заменяем в указанном тексте заданное слово на пустое «». По умолчанию заменяем все повторы. А фактически – удаляем их.
Теперь наша задача – узнать, сколько слов мы удалили. При помощи ДЛСТР узнаем количество символов, оставшихся в списке после этой замены. Вычитаем из первоначального количества символов количество оставшихся, то есть узнаем, сколько символов было удалено. Делим результат на число букв в искомом слове.
Результат вы видите на скриншоте выше.
Подсчет дубликатов строк.
Чтобы найти общее количество повторяющихся строк, вставьте функцию СЧЁТЕСЛИМН() вместо СЧЕТЕСЛИ() и укажите все столбцы, которые вы хотите проверить на наличие совпадений. Например, чтобы подсчитать повторяющиеся строки на основе столбцов A и B, введите следующую формулу массива в свой лист Excel:
{=ЧСТРОК($A$2:$A$17)-СУММ(ЕСЛИ(СЧЁТЕСЛИМН($A$2:$A$17;$A$2:$A$17;$B$2:$B$17;$B$2:$B$17)=1;1;0))}
Как видите, выполнить подсчет повторяющихся значений в таблицах Excel можно множеством различных способов.
Рекомендуем также:
Как посчитать количество повторяющихся значений в Excel?
Зачем считать дубликаты? Мы сможем получить ответы на многие интересные вопросы. Например, сколько клиентов совершили покупку, сколько менеджеров продали, сколько раз они работали с конкретным поставщиком и т.д. Если вы хотите рассчитать точное количество повторяющихся записей в таблице Excel, используйте одну из следующие методы для подсчета дубликатов.
Подсчет количества каждого из дубликатов.
Например, если у вас есть столбец с названиями продуктов, вам часто может потребоваться узнать, сколько дубликатов существует для каждого из них.
Чтобы узнать, сколько раз запись появляется на вашем листе Excel, используйте простую формулу СЧЁТЕСЛИ, где A2 — это первый элемент, а A8 — последний элемент в списке:
= СЧЁТЕСЛИ ($ A $ 2: $ A $ 17; A2)
Как показано на следующем снимке экрана, программа считает появления каждого элемента: «Фанта» встречается 2 раза, «Спрайт» встречается 3 раза и так далее.
Если вы хотите указать 1-й, 2-й, 3-й и т.д., когда встречается каждый элемент, используйте:
= СЧЁТЕСЛИ ($ A $ 2: $ A2; A2)
Мы отметили на рисунке первое, второе и третье вхождения Sprite.
Точно так же вы можете подсчитать количество повторяющихся строк. Единственная разница в том, что вам нужно будет использовать функцию СЧЁТЕСЛИ () вместо СЧЁТЕСЛИ (). Например:
= СЧЁТЕСЛИ ($ A $ 2: $ A $ 17; A2; $ B $ 2: $ B $ 17; B2; $ C $ 2: $ C $ 17, C2)
На скриншоте мы отметили те же линии.
После подсчета повторяющихся значений вы можете скрыть уникальные и отображать только те же значения или наоборот. Для этого примените автофильтр Excel.
Считаем общее количество дубликатов в столбце.
Самый простой способ подсчета повторов в столбце — использовать любую из формул, которые мы использовали для выявления дубликатов в Excel (см. Ссылки в конце этой статьи). А потом можете посчитать количество повторений:
= СЧЁТЕСЛИ (диапазон; «Дублировать»)
Давайте пересчитаем теги, которые вы использовали для поиска дубликатов.
В этом примере наше выражение принимает следующую форму:
= СЧЁТЕСЛИ (B2: B17; «Дублировать»)
Другой способ подсчитать количество повторений в Excel — использовать более сложную формулу массива. Преимущество такого подхода в том, что он не требует опорной стойки:
{= СТРОКИ ($ A $ 2: $ A $ 17) -SUM (IF (COUNTIF ($ A $ 2: $ A $ 17; $ A $ 2: $ A $ 17) = 1; 1; 0))}
Поскольку это формула массива, не забудьте нажать Ctrl + Shift + Enter, чтобы завершить ввод.
Также обратите внимание, что он учитывает все повторяющиеся записи, включая первые вхождения:
Можно обойтись без формулы майисва:
= СУММПРОИЗВ (- (СЧЁТЕСЛИ (A2: A17; A2: A17)> 1))
Он работает как для текста, так и для чисел, а пустые ячейки игнорируются, что также очень полезно.
Теперь посчитаем количество дубликатов без учета их первого появления в таблице.
Здесь также есть два пути. Первый использует вспомогательную колонку B.
В графе Б ставим соответствующие знаки, как мы это делали не раз.
= ЕСЛИ (СЧЁТЕСЛИ ($ A $ 2: $ A2; A2)> 1, «Дублировать»;»»)
Далее определяем количество ячеек, содержимое которых не определяется впервые:
= СЧЁТЕСЛИ (B2: B17; «Дублировать»)
или матричная формула
{= СЧЁТ (A2: A17) -SUM (1 / СЧЁТЕСЛИ (A2: A17; A2: A17))}
Что ж, можно пойти и наоборот. Давайте посчитаем количество уникальных записей таким простым и элегантным способом:
{= СУММ (1 / СЧЁТЕСЛИ (A2: A17; A2: A17))}
Эта формула массива может оказаться полезной для подсчета уникальных значений.
Что ж, теперь школьная проблема: если у нас есть только 16 слов (вы можете использовать функцию COUNT) и 10 из них уникальны, сколько будет неуникальных? Правильно — 6!
Количество совпадений по части ячейки.
Допустим, у нас в ячейке есть не только название товара, но и другая дополнительная информация: группа товаров, номер счета, единица измерения и т.д. Как в этом случае рассчитывается количество упоминаний того или иного товара?
Мы проверяем часть содержимого с помощью функции СЧЁТЕСЛИ и подстановочных знаков.
Делаем это так:
= СЧЁТЕСЛИ ($ A $ 2: $ A $ 17; «*» & C2&»*»)
Мы ищем любое вхождение нужного слова, используя подстановочный знак “*”.
Как посчитать количество дубликатов внутри ячейки.
Бывает, что список находится вовсе не в таблице, а в ячейке ($ A $ 2):
Приемы, которые мы обсуждали выше, здесь определенно не сработают. Но в Excel нет других функций, и все можно сделать так же легко:
= (DLSTR ($ D $ 1) -LSTR (ПОДСТАВИТЬ ($ D $ 1; D3; «»))) / DLSTR (D3)
С помощью DLSTR подсчитываем количество символов в ячейке со списком товаров ($ A $ 2)
Затем, используя ЗАМЕНА, замените указанное слово в указанном тексте пробелом «». Заменить все повторы по умолчанию. Фактически мы их устраняем.
Теперь наша задача — узнать, сколько слов мы удалили. С помощью DLSTR узнаем количество символов, оставшихся в списке после этой замены. Вычтите количество оставшихся символов из начального количества символов, т.е узнайте, сколько символов было удалено. Разделите результат на количество букв в поисковом слове.
Результат вы можете увидеть на скриншоте выше.
Подсчет дубликатов строк.
Чтобы найти общее количество повторяющихся строк, введите функцию СЧЁТЕСЛИ () вместо СЧЁТЕСЛИ () и укажите все столбцы, которые вы хотите сопоставить. Например, чтобы подсчитать повторяющиеся строки на основе столбцов A и B, введите следующую матричную формулу в лист Excel:
{= СТРОКИ ($ A $ 2: $ A $ 17) -SUM (IF (COUNTIF ($ A $ 2: $ A $ 17; $ A $ 2: $ A $ 17; $ B $ 2: $ B $ 17 ; $ B $ 2: $ B $ 17) = 1; 1; 0))}
Как видите, есть много разных способов подсчета повторяющихся значений в таблицах Excel.
Подсчет количества вхождений значения
Примечание: Мы стараемся как можно оперативнее обеспечивать вас актуальными справочными материалами на вашем языке. Эта страница переведена автоматически, поэтому ее текст может содержать неточности и грамматические ошибки. Для нас важно, чтобы эта статья была вам полезна. Просим вас уделить пару секунд и сообщить, помогла ли она вам, с помощью кнопок внизу страницы. Для удобства также приводим ссылку на оригинал (на английском языке).
Предположим, что нужно определить, сколько раз встречается конкретный текст или число в диапазоне ячеек. Например:
Если диапазон (например, a2: D20) имеет числовые значения 5, 6, 7 и 6, то число 6 встречается два значения.
Если столбец имеет значения «Батурин», «Белов», «Белов» и «Белов», то «Белова» выполняется три значения.
Подсчитать количество вхождений значения можно несколькими способами.
Используйте функцию СЧЁТЕСЛИ, чтобы узнать, сколько раз встречается определенное значение в диапазоне ячеек.
Дополнительные сведения см. в статье Функция СЧЁТЕСЛИ.
Функция СЧЁТЕСЛИМН аналогична функции СЧЁТЕСЛИ с одним важным исключением: СЧЁТЕСЛИМН позволяет применить критерии к ячейкам в нескольких диапазонах и подсчитывает число соответствий каждому критерию. С функцией СЧЁТЕСЛИМН можно использовать до 127 пар диапазонов и критериев.
Синтаксис функции СЧЁТЕСЛИМН имеет следующий вид:
Дополнительные сведения об использовании этой функции для подсчета вхождений в нескольких диапазонах и с несколькими условиями см. в статье Функция СЧЁТЕСЛИМН.
Допустим, вам нужно определить, сколько продавцов продавало определенный элемент в определенном регионе или хотите узнать, сколько продаж обработано с определенным значением, сделанное конкретным продавцом. Вы можете использовать функции Если и счёт вместе. то есть сначала используется функция Если для проверки условия, а затем, если результат функции если является истинным, для подсчета ячеек используется функция счёт .
Формулы в этом примере должны быть введены как формулы массива.
Если у вас установлена текущая версия Office 365, можно просто ввести формулу в верхней левой ячейке диапазона вывода и нажать клавишу ВВОД, чтобы подтвердить использование формулы динамического массива.
Если вы открыли эту книгу в Excel для Windows или Excel 2016 для Mac и более поздних версий, и хотите изменить формулу или создать подобную формулу, нажмите клавишу F2, а затем — клавиши CTRL + SHIFT + ВВОД , чтобы формула возвращала ожидаемые результаты. В более ранних версиях Excel для Mac используйте клавиши +SHIFT+ВВОД.
Чтобы эти примеры формул работали, вторым аргументом функции ЕСЛИ должно быть число.
Дополнительные сведения об этих функциях см. в статьях Функция СЧЁТ и Функция ЕСЛИ.
В следующих примерах функции ЕСЛИ и СУММ используются вместе. Функция ЕСЛИ сначала проверяет значения в определенных ячейках, а затем, если возвращается значение ИСТИНА, функция СУММ складывает значения, удовлетворяющие условию.
Примечания: Формулы, приведенные в этом примере, должны быть введены как формулы массива.
Если у вас установлена текущая версия Office 365, можно просто ввести формулу в верхней левой ячейке диапазона вывода и нажать клавишу ВВОД, чтобы подтвердить использование формулы динамического массива.
Если вы открыли эту книгу в Excel для Windows или Excel 2016 для Mac и более поздних версий, и хотите изменить формулу или создать подобную формулу, нажмите клавишу F2, а затем — клавиши CTRL + SHIFT + ВВОД , чтобы формула возвращала ожидаемые результаты. В более ранних версиях Excel для Mac используйте клавиши +SHIFT+ВВОД.
Функция выше означает, что если диапазон C2:C7 содержит значения Шашков и Туманов, то функция СУММ должна отобразить сумму записей, в которых выполняется условие. Формула найдет в данном диапазоне три записи для «Шашков» и одну для «Туманов» и отобразит 4.
Функция выше означает, что если ячейка D2:D7 содержит значения меньше 9 000 ₽ или больше 19 000 ₽, то функция СУММ должна отобразить сумму всех записей, в которых выполняется условие. Формула найдет две записи D3 и D5 со значениями меньше 9 000 ₽, а затем D4 и D6 со значениями больше 19 000 ₽ и отобразит 4.
Приведенная выше функция говорит о том, что D2: D7 содержит счета для Батурина менее чем на $9000, а сумма должна отобразить сумму записей, в которых оно соблюдается. Формула найдет ячейку C6, которая соответствует условию, и отобразит 1.
Для отображения итоговых значений и подсчета числа повторений в сводной таблице можно использовать сводную таблицу. Сводная таблица — это интерактивный способ быстрого суммирования больших объемов данных. Вы можете использовать ее для развертывания и свертывания уровней представления данных, чтобы получить точные сведения о результатах и детализировать итоговые данные по интересующим вопросам. Кроме того, можно перемещать строки в столбцы или столбцы в строки («сводить» их) для просмотра количества вхождений значения в сводной таблице. Рассмотрим пример электронной таблицы «Продажи», в которой можно подсчитать количество значений продаж для разделов «Гольф» и «Теннис» за конкретные кварталы.
Введите данные в электронную таблицу Excel.
Выделите диапазон A2:C8
Выберите Вставка > Сводная таблица.
В диалоговом окне «Создание сводной таблицы» установите переключатель Выбрать таблицу или диапазон, а затем — На новый лист и нажмите кнопку ОК.
Пустая сводная таблица будет создана на новом листе.
В области «Поля сводной таблицы» выполните одно из указанных ниже действий.
Перетащите элемент Спорт в область Строки.
Перетащите элемент Квартал в область Столбцы.
Перетащите элемент Продажи в область Значения.
Повторите третье действие.
Имя поля Сумма_продаж_2 отобразится и в области «Сводная таблица», и в области «Значения».
На этом этапе область «Поля сводной таблицы» будет выглядеть так:
В области Значения щелкните стрелку раскрывающегося списка рядом с полем Сумма_продаж_2 и выберите пункт Параметры поля значений.
В диалоговом окне Параметры поля значений выполните указанные ниже действия.
На вкладке Операция выберите пункт Количество.
В поле Пользовательское имя измените имя на Количество.
Нажмите кнопку ОК.
Сводная таблица отобразит количество записей для разделов «Гольф» и «Теннис» за кварталы 3 и 4, а также показатели продаж.
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community, попросить помощи в сообществе Answers community, а также предложить новую функцию или улучшение на веб-сайте Excel User Voice.
Как подсчитывать повторения в Excel?
Добрый день, уважаемый читатель!
Эту статью я хочу посвятить повторам тех значений, которые встречаются в вашей таблице, то есть мы научимся как подсчитывать повторения в Excel. Данная возможность будет полезной при подсчёте одинаковых значений в необходимом диапазоне, это поможет когда с большого массива вам нужно сгруппировать, например, сколько сотрудников сделало чеков, сколько раз работали с тем или иным поставщиком и многое другое.
Для начала рассмотрим, как выглядят столбики с данными, повторения в которых, мы собственно и будем считать. К примеру, возьмём список сотрудников, которые совершают продажи. Теперь можно посчитать, сколько раз сотрудник производил продажи, то есть попросту считаем сколько повторений его фамилии в столбике. Это возможно произвести несколькими способами:
Используя функцию СЧЁТЕСЛИ
В Excel произвести такой подсчёт чрезвычайно просто, достаточно задействовать функцию СЧЁТЕСЛИ и она за несколько секундок всё за вас сделает. В нашем случае формула будет следующего вида:
=СЧЁТЕСЛИ($B$2:$B$11;B15) В первом аргументе «диапазон» $B$2:$B$11, указываем тот диапазон ячеек, в котором и будет производиться подсчёт повторяющихся данных. Важно! Указывать случайный диапазон данных недопустимо. Его особенностью является то, что он может быть только диапазоном ячеек или ссылкой на определённую ячейку.
Вторым аргументом «критерий» ставим указание на ячейку, по которому будет производиться подсчёт аналогичных данных. Если он один вы можете его прописать вручную как текстовое слово и вместо адреса ячейки «B15» указать «Нагаев А.В.», результат будет аналогичным, но только в одном конкретном случае, возможность автоматизации таблицы тогда значительно сократится.
Дополнительная информация! Кроме прямого указания поиска данных, функция СЧЁТЕСЛИ умеет работать с символами подстановки. Таких знаков используют двух видов «?» и «*», применять их возможно только при работе с текстовыми символами. Знак «*» позволяет заменить абсолютно любое количество значений, а Знак «?» производит замену только одного символа.
Для работы с числовыми значениями необходимо применять знаки операторов сравнения: «>», « » и «=». К примеру, для подсчёта числовых значений больше «нуля» прописывайте «>0», а для подсчёта непустых ячеек нужен указать «<>».
Используем функцию СЧЁТЕСЛИМН
Когда у вас возникает необходимость подсчитывать повторения в Excel, но уже по нескольким критериям, тогда нужно работать с функцией СЧЁТЕСЛИМН, которая легко и просто сможет это выполнить.
В моём примере я добавлю категорию продаж по городам и используя формулы соберу необходимые мне повторы:
=СЧЁТЕСЛИМН($B$2:$B$11;B14;$C$2:$C$11;C14) Замечу, что орфография функции абсолютно аналогична предыдущей функции СЧЁТЕСЛИ, разница состоит только в их количестве. В нашем примере их два, но функция умеет работать и со 127 диапазонами.
Работаем с функцией ДЛСТР
Теперь давайте рассмотрим ситуацию, когда не всё так просто и упорядоченно, когда информация сбита в одну ячейку, к примеру, «Нагаев Гаврош Каропачёв Козубенко Нагаев Гаврош Козубенко Нагаев Нагаев». В этом случае статистические функции нам не помогут, необходимо считать символы и сверять повторы значений с указанным эталоном. Для этих целей есть много иных полезных функций, используя которые это можно провернуть достаточно просто:
=(ДЛСТР($B$2) -ДЛСТР(ПОДСТАВИТЬ($B$2;B5;»»)))/ДЛСТР(B5) Итак, используя функцию ДЛСТР, мы считаем, сколько же символов содержится в ячейке «$B$2» и «B5», результат будет «71». А потом с помощью функции ПОДСТАВИТЬ производим замену текущего значения на «пусто», получаем результат «47». Следующим действием отнимаем от общего количества символов наш остаток «71-47=24» и делим на количество символов в одном значении «24/6=4», как результат получаем сколько раз в строке, встречается необходимый результат… Ответ: 4. (Это результат рассматривая только первую строку поиска).
С помощью функций VBA
Последний рассматриваемый вариант, это подсчёт количества повторений с помощью, созданной в VBA функции. Функции я не писал, а просто предлагаю вам найденный ранее вариант, чтобы упростить вашу работу.
Для начала вам нужно запустить редактор макросов VBA и вставить новый модуль с помощью команд «Insert» — «Module». В созданное окно модуля вы вставляете код функции:
Подсчет количества значений в столбце в Excel
Как подсчитать сумму значений в ячейках таблицы Excel, наверняка, знает каждый пользователь, который работает в этой программе. В этом поможет функция СУММ, которая вынесена в последних версиях программы на видное место, так как, пожалуй, используется значительно чаще остальных. Но порой перед пользователем может встать несколько иная задача – узнать количество значений с заданными параметрами в определенном столбце. Не их сумму, а простой ответ на вопрос – сколько раз встречается N-ое значение в выбранном диапазоне? В Эксель можно решить эту задачу сразу несколькими методами.
Какой из перечисленных ниже способов окажется для вас наиболее подходящим, во многом зависит от вашей цели и данных, с которыми вы работаете. Одни операторы подойдут только для числовых данных, другие не работают с условиями, а третьи не зафиксируют результат в таблице. Мы расскажем обо всех методах, среди которых вы точно найдете тот, который наилучшим образом подойдет именно вам.
Метод 1: отображение количества значений в строке состояния
Пожалуй, это самый легкий метод, который подойдет для работы с текстовыми и числовыми данными. Но он не способен работать с условиями.
Воспользоваться этим методом крайне просто: выделяем интересующий массив данных (любым удобным способом). Результат сразу появится в строке состояния (Количество). В расчете участвуют все ячейки, за исключением пустых.
Еще раз подчеркнем, что при таком методе учитываются ячейки с любыми значениями. В теории, можно вручную выделить только интересующие участки таблицы или даже конкретные ячейки и посмотреть результат. Но это удобно только при работе с небольшими массивами данных. Для больших таблиц существуют другие способы, которые мы разберем далее.
Другой минус этого метода состоит в том, результат сохраняется лишь до тех пор, пока мы не снимем выделение с ячеек. Т.е. придется либо запоминать, либо записывать результат куда-то отдельно.
Порой бывает, что по умолчанию показатель “Количество” не включен в строку состояния, однако это легко поправимо:
- Щелкаем правой клавишей мыши по строке состояния.
- В открывшемся перечне обращаем вниманием на строку “Количество”. Если рядом с ней нет галочки, значит она не включена в строку состояния. Щелкаем по строке, чтобы добавить ее.
- Все готово, с этого момента данный показатель добавится на строку состояния программы.
Метод 2: применение функции СЧЕТЗ
Данная функция позволяет сделать то же самое, но с одной существенной разницей – полученный результат будет зафиксирован. Остальные минусы предыдущего метода сохраняются, т.е. СЧЕТ3 не работает с условиями.
Функция СЧЕТ3 выполняет задачу по подсчету всех заполненных ячеек в заданном диапазоне (пустые не учитываются). Формула функции может выглядет по-разному:
- =СЧЕТЗ(ячейка1;ячейка2;…ячейкаN)
- =СЧЕТЗ(ячейка1:ячейкаN)
В первом случае функция выполнит подсчет всех перечисленных ячеек. Во втором – определит количество непустых ячеек в диапазоне от ячейки 1 до ячейки N. Обратите внимание, что количество аргументов функции ограничено на отметке 255.
Давайте попробуем применить функцию СЧЕТ3 на примере:
- Выбираем ячейку, где по итогу будет выведен результат подсчета.
- Переходим во вкладку “Формулы” и нажимаем кнопку “Вставить функцию”.Также можно кликнуть по значку «Вставить функцию» рядом со строкой формул.
- В открывшемся меню (Мастер функций) выбираем категорию «Статистические», далее ищем в перечне нужную функцию СЧЕТ3, выбираем ее и нажимаем OK, чтобы приступить к ее настройке.
- В окне «Аргументы функции» задаем нужные ячейки (перечисляя их или задав диапазон) и щелкаем по кнопке OK. Задать диапазон можно как с заголовком, так и без него.
- Результат подсчет будет отображен в выбранной нами ячейке, что изначально и требовалось. Учтены все ячейки с любыми данными (за исключением пустых).
Метод 3: использование функции СЧЕТ
Функция СЧЕТ подойдет, если вы работаете исключительно с числами. Ячейки, заполненные текстовыми значениями, этой функцией учитываться не будут. В остальном СЧЕТ почти идентичен СЧЕТЗ из ранее рассмотренного метода.
Так выглядит формула функции СЧЕТ:
- =СЧЕТ(ячейка1;ячейка2;…ячейкаN)
- =СЧЕТ(ячейка1:ячейкаN)
Алгоритм действий также похож на тот, что мы рассмотрели выше:
- Выбираем ячейку, где будет сохранен и отображен результат подсчета значений.
- Заходим в Мастер функций любым удобным способом, выбираем в категории “Статистические” необходимую строку СЧЕТ и щелкаем OK.
- В «Аргументах функции» задаем диапазон ячеек или перечисляем их. Далее жмем OK.
- В выбранной ячейке будет выведен результат. Функция СЧЕТ проигнорирует все ячейки с пустым содержанием или с текстовыми значениями. Таким образом, будет произведен подсчет исключительно тех ячеек, которые содержат числовые данные.
Метод 4: оператор СЧЕТЕСЛИ
Наконец, мы подошли к функции, которая способна сделать подсчет по определенным условиям. Оператор СЧЕТЕСЛИ создан именно для этой задачи. Все ячейки без данных и те, которые не отвечают заданным пользователем параметрам, данная функция игнорирует.
Синтаксис СЧЕТЕСЛИ типичен для всех операторов, работающих с условиями:
=СЧЕТЕСЛИ(диапазон;критерий)
Диапазон – область ячеек, внутри которой необходимо найти количество совпадений по заданному условию.
Критерий – конкретное условие, совпадение по которому ищет функция. Условие указывается в кавычках, может быть задано как в виде точного совпадения с введенным числом или текстом, или же как математическое сравнение, заданное знаками «не равно» («<>»), «больше» («>») и «меньше» (« /= ») перед словом «бег».
Напоследок, можно разобрать работу с числовыми условиями, содержащими знаки «больше» («>») или «меньше» (« 350” в поле “Критерий” и жмем OK.
Метод 5: использование оператора СЧЕТЕСЛИМН
СЧЕТЕСЛИМН – функция, полностью аналогичная СЧЕТЕСЛИ, но позволяет ввести несколько диапазонов с одинаковыми или разными условиями.
Например, нам нужно посчитать количество товаров, которые проданы более 300 шт, а также, товары, чья стоимость более 6000 руб.
Разберем, как это сделать при помощи функцией ЧТОЕСЛИМН:
- В Мастере функций уже хорошо знакомым способом находим оператор СЧЕТЕСЛИМН, который находится все в той же категории “Статические” и вставляем в ячейку для вывода результата, нажав кнопку OK.
- Кажется, что окно настроек функции не отличается от СЧЕТЕСЛИ, но как только мы введем данные первого условия, появятся поля для ввода второго.
- В поле «Диапазон 1» вводим координаты столбца, содержащего данные по продажам в шт. В поле «Условие 1» согласно нашей задаче пишем “>300”.
- В «Диапазоне 2» указываем координатами столбца, который содержит данные по ценам. В качестве «Условия 2», соответственно, указываем “>6000”.
- Нажимаем OK и получаем в итоговой ячейке число, сообщающее нам, сколько раз в выбранных диапазонах встретились ячейки с заданными нами параметрами. В нашем примере число равно 14.
Метод 6: функция СЧИТАТЬПУСТОТЫ
В некоторых случаях перед нами может стоять задача – посчитать в массиве данных только пустые ячейки. Тогда крайне полезной окажется функция СЧИТАТЬПУСТОТЫ, которая проигнорирует все ячейки, за исключением пустых.
По синтаксису функция крайне проста:
=СЧИТАТЬПУСТОТЫ(диапазон)
Порядок действий практически ничем не отличается от вышеперечисленных:
- Выбираем ячейку, куда хотим вывести итоговый результат по подсчету количества пустых ячеек.
- Заходим в Мастер функций, среди статистических операторов выбираем “СЧИТАТЬПУСТОТЫ” и нажимаем ОК.
- В окне «Аргументы функции» указываем нужный диапазон ячеек и кликаем по кнопку OK.
- В заранее выбранной нами ячейке отобразится результат. Будут учтены исключительно пустые ячейки и проигнорированы все остальные.
Заключение
Программа Microsoft Excel – крайне мощный инструмент, способный решать множество проблем самого разного уровня сложности. Даже в простейшей задаче по подсчету количества значений программа может сильно облегчить жизнь пользователю, причем несколькими разными способами. На каком именно способе подсчета количества значений из перечисленных в данной статье остановиться – зависит от ваших целей и задач.
Как подсчитать количество повторений
В этой статье я хочу рассказать, как можно подсчитать количество повторений какого-либо значения в таблице или в ячейке. Начнем по порядку. Имеется таблица:
И необходимо подсчитать количество повторений каждого наименования:
Как ни странно, но сделать это весьма просто: в Excel имеется функция — СЧЁТЕСЛИ, при помощи которой все это сделать можно буквально за секунды. Если количество повторений каждого наименования необходимо вывести в столбец В таблицы, а сами наименования расположены в столбце А:
=СЧЁТЕСЛИ( $A$2:$A$30 ; A2 )
Диапазон ( $A$2:$A$30 ) — указываются ячейки диапазона, в которых записаны значения, количество которых необходимо подсчитать. Главная особенность: данный аргумент может быть исключительно ссылкой на ячейку или диапазон ячеек. Недопустимо указывать произвольный массив значений.
Критерий ( A2 ) — указывается ссылка на ячейку или непосредственно значение для подсчета. Т.е. можно указать и так: =СЧЁТЕСЛИ( $A$2:$A$30 ;»Яблоко») . Помимо этого можно применять символы подстановки: ? и *. Т.е. указав в качестве Критерия «*банан*» можно подсчитать количество ячеек, в которых встречается слово «банан» (банановый, банан, бананы, банановый сок, сто бананов, три банана и орех и т.п.). А указав «банан*» — значения, начинающиеся на «банан» (бананы, банановый сок, банановая роща и т.п.). «?» — заменяет лишь один символ, т.е. указав «бан?н» можно подсчитать строки и со значением «банан» и со значением «банон» и т.д. Если в качестве критерия указать =СЧЁТЕСЛИ( $A$2:$A$30 ;»*») , то будут подсчитаны все текстовые значения. Числовые значения при этом игнорируются. Данные подстановочные символы (* и ?) не получится применить к числовым значениям — исключительно к тексту. Т.е. если если указать в качестве критерия «12*», то числа 1234, 123, 120 и т.п. не будут подсчитаны. Для подсчета числовых значений следует применять операторы сравнения: =СЧЁТЕСЛИ( $A$2:$A$30 ;»>12″)
Подсчитать числа, которые больше нуля: =СЧЁТЕСЛИ( $A$2:$A$30 ;»>0″)
Подсчитать количество непустых ячеек: =СЧЁТЕСЛИ( $A$2:$A$30 ;»<>«)
Как видно из второго рисунка — там наименования не повторяются, хотя в таблице они все записаны вперемешку. Я не буду заострять на этом внимание — я уже описывал это в статье Как получить список уникальных(не повторяющихся) значений? и при необходимости можно воспользоваться любым описанным в ней методом.
Если необходимо подсчитать количество повторений на основании нескольких условий(значений), то начиная с 2007 Excel это легко можно сделать при помощи функции СЧЁТЕСЛИМН(COUNTIFS). Синтаксис функции почти такой же, как у СЧЁТЕСЛИ(COUNTIF), только условий и диапазонов больше:
=СЧЁТЕСЛИМН( $A$2:$A$30 ; A2 ; $B$2:$B$30 ; B2 )
предполагается, что условия записаны в столбце В
По сути идет просто перечисление:
=СЧЁТЕСЛИМН(Диапазон_условий1;Условие1; Диапазон_условий2;Условие2; Диапазон_условий3;Условие3; и т.д.)
Но. Бывают случаи, когда список расположен вовсе не в таблице, а в одной ячейке( $D$1 ):
Дыня Киви Груша Яблоко Дыня Груша Груша Арбуз Яблоко Банан Яблоко Яблоко Банан Яблоко Яблоко Дыня Дыня Киви Банан Дыня Арбуз Дыня Киви Яблоко Дыня Груша Яблоко Киви Арбуз
Здесь СЧЁТЕСЛИ точно не поможет. Но в Excel полно других функций и все можно сделать так же достаточно просто:
=(ДЛСТР( $D$1 )-ДЛСТР(ПОДСТАВИТЬ( $D$1 ; D3 ;»»)))/ДЛСТР( D3 )
ДЛСТР— подсчитывает количество символов в указанной ячейке/строке( $D$1 , D3 )
ПОДСТАВИТЬ (текст; старый_текст; новый_текст) — заменяет в указанном тексте заданный символ на любое другое заданное значение. По умолчанию заменяет все повторы указанного символа. Именно это и положено в основу алгоритма. На примере значения Банан( D3 ) пошаговый разбор формулы:
- при помощи функции ДЛСТР получаем количество символов в строке с исходным текстом( $D$1 ) =(170-ДЛСТР(ПОДСТАВИТЬ( $D$1 ; D3 ;»»)))/ДЛСТР( D3 ) ;
- при помощи функции ПОДСТАВИТЬ заменяем в строке с исходным текстом( $D$1 ) все значения Банан( D3 ) на пусто и при помощи ДЛСТР получаем количество символом строки после этой замены =(170-155)/ДЛСТР( D3 ) ;
- вычитаем из общего количества символов количество символов в строке после замены и умножаем результат на количество символов в критерии =(170-155)/5 .
Получаем число 3. Что нам и требовалось.
И простая функция пользователя, которая так же подсчитывает повторения внутри ячейки:
Function GetRepeat(sTxt As String, sCntWord As String) GetRepeat = (Len(sTxt) — Len(Replace(sTxt, sCntWord, «»))) / Len(sCntWord) End Function
Чтобы правильно использовать приведенный код, необходимо сначала ознакомиться со статьей Что такое функция пользователя(UDF)?. Вкратце: скопировать текст кода выше, перейти в редактор VBA( Alt + F11 ) -создать стандартный модуль(Insert —Module) и в него вставить скопированный текст. После чего функцию можно будет вызвать из Диспетчера функций( Ctrl + F3 ), отыскав её в категории Определенные пользователем (User Defined Functions) .
Синтаксис функции:
=GetRepeat( $D$1 ; D3 )
sTxt — текст, в котором подсчитываем кол-во вхождения.
sCntWord — текст для подсчета. Может быть символом или словом.
Tips_All_Count_Duplicate.xls (39,0 KiB, 8 652 скачиваний)
Статья помогла? Поделись ссылкой с друзьями!
Поиск по меткам
Добрый день.
Можете ли вы мне помочь?
Нужно посчитать количество повторений по столбцу рейс только в одной строке.
Рейс. Объем. Колич
повтор
1аб. 2 2
1ав. 3. 1
1 аб. 0.3. 2 (2нужно посчитать как 0)
2аг. 9. 2
2аг. 3. 2 (2нужно посчитать как 0)
2ав. 0.4. 1
Убрать дубликаты не могу, т.к удаляет всю строку, а значения в поле объем нужны для дальнейшего расчета. Упорядочить значения в столбце рейс тоже нельзя, т.к во всей исходной таблице есть объединенные ячейки, которые нельзя разбить.
Попробуйте задать вопрос в форуме , приложив пример файла с данными. По одному описанию у меня не получается понять задачу.
Формула для выборки всех одинаковых значений в столбце Excel
Одно из ограничений функции ВПР и других поисковых функций выборки в Excel основано на том, что они находят только первое встретившееся значение соответствующие искомому запросу в списке данных. Но что если таблица содержит несколько одинаковых значений удовлетворяющие запрос пользователя? Чтобы найти второе, третье или очередное соответствующее значение, следует использовать формулу массива.
Как найти все одинаковые значения в столбце таблицы Excel
Ниже на рисунке представлен список продавцов и их показатели по продажам. Имена некоторых продавцов в списке повторяются. Обок исходной таблицы находится отфильтрованный список, содержащий все результаты продаж только по одному продавцу. Чтобы создать такой список запроса к исходной таблице с помощью обычных формул мало одного использования функции ВПР. Так как данная функция ищет и возвращает только первое соответствие проверяемых значений с искомым. А в данной задаче необходимо получить все значения, удовлетворяющие искомому запросу и расположить их на отдельном списке. Первая формула:
СТРОКА()-2;$E$1;»»)’ class=’formula’>
Формула использована в столбце D немного проще. Она возвращает список, в котором имя продавца появляется ровно столько раз, сколько оно встречается в исходной таблице. Для определения количества повторений имени использована функция СЧЁТЕСЛИ.
Формулы в столбцах D и E скопированы в остальные ячейки, находящиеся ниже, таким образом, чтобы были отображены все выступающие значения.
Формула в столбце D возвращает имя записанное в ячейке E1, если количество повторений искомого имени продавца в исходной таблице больше чем результат вычисления формулы СТРОКА()-2. В первой ячейке исходной таблицы A2 формула СТРОКА()-2 возвращает значение 0. Так как имя продавца «Засядько Петр» появляется в списке больше чем 0 раз, поэтому оно отображается в списке справа. Однако на шестой строке листа формула СТРОКА()-2 возвращает значение 5, но оно уже равно значению 5 возвращаемое формулой СЧЁТЕСЛИ($A$2:$A$17;$E$1). В таком случае возвращается пустая строка (двойные кавычки). В следующей 7-ой строке СТРОКА()-2=6 – число шесть больше чем 5 и снова двойные кавычки вместо имени и т.д.
Как сделать выборку по всех одинаковых значениях столбца в Excel
Формула в столбце E является формулой массива, которая требует для ввода нажатия комбинации клавиш CTRL+SHIFT+Enter. Данная формула сначала проверяет, находится ли имя в смежной ячейке столбца D. Если ячейка пуста, то возвращается пустая строка. В первом случае использована функция ИНДЕКС возвращающая продажи соответствующее текущему числу повторения имени в исходной таблице. Вторая формула:
0;ИНДЕКС($B$1:$B$17;НАИМЕНЬШИЙ(ЕСЛИ(($A$2:$A$17=D2);СТРОКА($A$2:$A$17);»»);СТРОКА()-1));»»)’ class=’formula’>
Выше приведенная формула выполняет несколько функций, а именно: ИНДЕКС, НАИМЕНЬШИЙ и СТРОКА. Функция НАИМЕНЬШИЙ ищет строку с наименьшим значением, которая передается как аргумент для функции ИНДЕКС возвращающую найденное значение с этой строки.
В качестве аргумента «Номер строки» в функции ИНДЕКС используется функция НАИМЕНЬШИЙ. Первым ее аргументом выступает таблица (в данном примере таблица строк или пустых значений), а вторым аргументом является число определяющее порядковый номер наименьшего значения. Например, число 2 во втором аргументе приводит к возвращению функцией второго наименьшего значения. В качестве второго аргумента используется формула СТРОКА-1 – в данном случае выполняет роль счетчика порядковых номеров наименьших значений. Вычитается число 1, так как данные в исходной таблице записаны начиная со второй строки. Формула во второй строке рабочего листа Excel возвращает первое наименьшее значение, в третьей строке – второе наименьшее и т.д.
Функция НАИМЕНЬШИЙ игнорирует текстовые строки и оперирует только с числами. Чтобы получить номер строки ячейки в диапазоне A2:A17 содержащий исходные имена продавцов, необходимо воспользоваться функцией ЕСЛИ. Если текущее имя не соответствует искомому имени, тогда будет возвращена пустая строка, которую функция НАИМЕНЬШИЙ просто проигнорирует. Когда же в функции ЕСЛИ будет использовано искомое имя «Засядько Петр» в тоже время таблица числовых значений будет передана для функции НАИМЕНЬШИЙ. Как будет выглядеть эта таблица массива в памяти программы можно продемонстрировать схематически так:
Данная таблица массива состоит из 16-ти элементов. Если же в проверяемой ячейке находится строка с именем продавца «Засядько Петр» в таблицу заносится текущий номер этой ячейки, а функция НАИМЕНЬШИЙ возвращает наименьший номер по порядку. Например, в 4-ой формуле ячейки E5 эта функция возвращает номер ячейки 12. Четвертый по порядку непустой элемент в таблице массива. В тоже время функция ИНДЕКС возвращает значение со смежной ячейки этой строки – 136,41.
Что такое формула массива в Excel
Формулы массива – это специального типа формулы, которые работают с массивами чисел. Обычная формула для ввода требует одного нажатия клавиши Enter. Для ввода формулы массива следует нажимать Enter с предварительно одновременно нажатыми двумя клавишами CTRL и SHIFT. Как уже упоминалось комбинация клавиш: CTRL+SHIFT+Enter.
Чтобы убедиться в том, что в ячейке используется формула массива следует посмотреть на строку формул. Программа Excel помещает формулу массива в фигурные скобки. Нет смысла вводить эти фигурные скобки самостоятельно, так как это не сработает. Только комбинация клавиш!
Стоит отметить что некоторые функции такие как СУММПРОИЗВ работают по тому же принципу что и формула массива, но они не требуют для ввода комбинации клавиш, так как по сути являются обычными формулами. СУММПРОИЗВ вычисляет только сумму значений в массивах данных. Если же необходимо выполнить другие операции с массивами данных, а не только суммирование, например, использовать формулы с функциями НАИМЕНЬШИЙ или СРЗНАЧ, тогда придется воспользоваться формулой массива с этими функциями. Не забыв нажать комбинацию клавиш CTRL+SHIFT+Enter для ввода!
Хитрости »
11 Ноябрь 2012 574631 просмотров
Как подсчитать количество повторений
В этой статье я хочу рассказать, как можно подсчитать количество повторений какого-либо значения в таблице или в ячейке.
-
Что будем считать
- Количество повторений каждой ячейки
- Особенность при работе с функцией СЧЁТЕСЛИ
- Количество повторений значения внутри ячейки
Количество повторений каждой ячейки
Имеется таблица:
И необходимо подсчитать количество повторений каждого наименования:
Самый простой способ — создать сводную таблицу, поместив в область строк и в область значений данные столбца А. Сводная сделает все сама. Подробнее про создание и использование сводных таблиц можно узнать в этой статье с видеоуроком: Общие сведения о сводных таблицах
Но если по каким-то причинам сводная не Ваш вариант — в Excel имеется функция СЧЁТЕСЛИ(COUNTIF), при помощи которой все это можно сделать тоже буквально за секунды. Если количество повторений каждого наименования необходимо вывести в столбец В таблицы, а сами наименования расположены в столбце А:
=СЧЁТЕСЛИ($A$2:$A$30;A2)
=COUNTIF($A$2:$A$30,A2)
Диапазон ($A$2:$A$30) — указываются ячейки диапазона, в которых записаны значения, количество которых необходимо подсчитать. Главная особенность: данный аргумент может быть исключительно ссылкой на ячейку или диапазон ячеек. Недопустимо указывать произвольный массив значений.
Критерий (A2) — указывается ссылка на ячейку или непосредственно значение для подсчета. Т.е. можно указать и так: =СЧЁТЕСЛИ($A$2:$A$30;»Яблоко»). Помимо этого можно применять символы подстановки: ? и *. Т.е. указав в качестве Критерия «*банан*» можно подсчитать количество ячеек, в которых встречается слово «банан»(банановый, банан, бананы, банановый сок, сто бананов, три банана и орех и т.п.). А указав «банан*» — значения, начинающиеся на «банан»(бананы, банановый сок, банановая роща и т.п.). «?» — заменяет лишь один символ, т.е. указав «бан?н» можно подсчитать строки и со значением «банан» и со значением «банон» и т.д. Если в качестве критерия указать =СЧЁТЕСЛИ($A$2:$A$30;»*»), то будут подсчитаны все текстовые значения. Числовые значения при этом игнорируются. Данные подстановочные символы (* и ?) не получится применить к числовым значениям — исключительно к тексту. Т.е. если если указать в качестве критерия «12*», то числа 1234, 123, 120 и т.п. не будут подсчитаны. Для подсчета числовых значений следует применять операторы сравнения: =СЧЁТЕСЛИ($A$2:$A$30;»>12″)
Подсчитать числа, которые больше нуля:=СЧЁТЕСЛИ($A$2:$A$30;»>0″)
Подсчитать количество непустых ячеек: =СЧЁТЕСЛИ($A$2:$A$30;»<>»)
Как видно из второго рисунка — там наименования не повторяются, хотя в таблице они все записаны вперемешку. Я не буду заострять на этом внимание — я уже описывал это в статье Как получить список уникальных(не повторяющихся) значений? и при необходимости можно воспользоваться любым описанным в ней методом.
Если необходимо подсчитать количество повторений на основании нескольких условий(значений), то начиная с 2007 Excel это легко можно сделать при помощи функции
СЧЁТЕСЛИМН(COUNTIFS)
. Синтаксис функции почти такой же, как у
СЧЁТЕСЛИ(COUNTIF)
, только условий и диапазонов больше:
=СЧЁТЕСЛИМН($A$2:$A$30;A2;$B$2:$B$30;B2)
предполагается, что условия записаны в столбце В
По сути идет просто перечисление:
=СЧЁТЕСЛИМН(Диапазон_условий1;Условие1; Диапазон_условий2;Условие2; Диапазон_условий3;Условие3; и т.д.)
Особенность при работе с функцией СЧЁТЕСЛИ
Так же не могу не написать про небольшую особенность функции
СЧЁТЕСЛИ
(а так же
СЧЁТЕСЛИМН
,
СУММЕСЛИ
,
СУММЕСЛИМН
и им подобных) — данные функции всегда стремятся преобразовать все значения аргументов к типам(в отличии от той же
ВПР
, которая к типам относится очень бережно и ничего не преобразует). Что это значит. Если у нас в ячейке записано число
23
— оно будет воспринято как число. Если тоже число будет записано как текст —
«023»
, то функция преобразует его сначала в число 23, а потом уже будет работать с ним. Т.е. и 23 и «023» у нас будут считаться одинаковым значением. Иными словами: если значение можно преобразовать в число — оно будет преобразовано в число и функция будет работать уже именно с этим числом.
С одной стороны это хорошо, но иногда такое поведение может сыграть злую шутку. Например, у нас в ячейках расположены некие номера счетов, длина которых более 15-ти символов и могут иметь ведущие нули:
00034889913131323455
0034889913131323455
00034889913131323477
как видно, первые два числа почти одинаковые, но у первого числа три ведущих нуля спереди, а второго — два. И это разные счета. А третий счет вообще отличается на последние цифры. Но СЧЁТЕСЛИ после преобразования все три этих значения будет считать как число
34889913131323400
и если записать функцию так:
=СЧЁТЕСЛИ($A$1:$A$3;A1)
, то она вернет значение 3. Особо обращаю внимание на тот факт, что все числа после 15-го знака будут преобразованы в нули. Эти особенности всегда необходимо учитывать при использовании данных функций, чтобы не попасть в неловкую ситуацию, когда подсчет будет некорректным.
Количество повторений значения внутри ячейки
Еще один вариант подсчета значений. Бывают случаи, когда список расположен вовсе не в таблице, а в одной ячейке(
$D$1
):
Дыня Киви Груша Яблоко Дыня Груша Груша Арбуз Яблоко Банан Яблоко Яблоко Банан Яблоко Яблоко Дыня Дыня Киви Банан Дыня Арбуз Дыня Киви Яблоко Дыня Груша Яблоко Киви Арбуз
Здесь СЧЁТЕСЛИ точно не поможет. Но в Excel полно других функций и все можно сделать так же достаточно просто:
=(ДЛСТР($D$1)-ДЛСТР(ПОДСТАВИТЬ($D$1;D3;»»)))/ДЛСТР(D3)
=(LEN($D$1)-LEN(SUBSTITUTE($D$1,D3,»»)))/LEN(D3)
ДЛСТР(LEN)
— подсчитывает количество символов в указанной ячейке/строке(
$D$1, D3
)
ПОДСТАВИТЬ(SUBSTITUTE) (текст; старый_текст; новый_текст)
— заменяет в указанном тексте заданный символ на любое другое заданное значение. По умолчанию заменяет все повторы указанного символа. Именно это и положено в основу алгоритма. На примере значения Банан(
D3
) пошаговый разбор формулы:
- при помощи функции ДЛСТР получаем количество символов в строке с исходным текстом($D$1) =(170-ДЛСТР(ПОДСТАВИТЬ($D$1;D3;»»)))/ДЛСТР(D3);
- при помощи функции ПОДСТАВИТЬ заменяем в строке с исходным текстом($D$1) все значения Банан(D3) на пусто и при помощи ДЛСТР получаем количество символов строки после этой замены =(170-155)/ДЛСТР(D3);
- вычитаем из общего количества символов количество символов в строке после замены и делим результат на количество символов в критерии =(170-155)/5.
Получаем число 3. Что нам и требовалось.
Но тут есть и более каверзная ситуация — когда у нас диапазон ячеек, в каждой из которых наше слово может встречаться более одного раза. И подсчитать надо ВСЕ повторения. Диапазон для подсчета повторений у нас будет в ячейках A1:A10. Слово для подсчета повторений запишем в ячейку B1(там будет все тоже слово «банан»):
Базируясь на формуле выше можно написать такую:
=СУММПРОИЗВ((ДЛСТР(A1:A10)-ДЛСТР(ПОДСТАВИТЬ(A1:A10;B1;»»)))/ДЛСТР(B1))
=SUMPRODUCT((LEN(A1:A10)-LEN(SUBSTITUTE(A1:A10,B1,»»)))/LEN(B1))
И простая функция пользователя, которая так же подсчитывает повторения внутри ячейки:
Function GetRepeat(sTxt As String, sCntWord As String) GetRepeat = (Len(sTxt) - Len(Replace(sTxt, sCntWord, ""))) / Len(sCntWord) End Function
Чтобы правильно использовать приведенный код, необходимо сначала ознакомиться со статьей Что такое функция пользователя(UDF)?. Вкратце: скопировать текст кода выше, перейти в редактор VBA(Alt+F11) -создать стандартный модуль(Insert —Module) и в него вставить скопированный текст. После чего функцию можно будет вызвать из Диспетчера функций(Ctrl+F3), отыскав её в категории Определенные пользователем (User Defined Functions).
Синтаксис функции:
=GetRepeat($D$1;D3)
sTxt — текст, в котором подсчитываем кол-во вхождения.
sCntWord — текст для подсчета. Может быть символом или словом.
Скачать пример
Пример Подсчета повторений.xls (70,5 KiB, 13 310 скачиваний)
Так же см.:
Что такое формула?
Функция СУММЕСЛИ, а так же СУММЕСЛИ по двум критериям
Статья помогла? Поделись ссылкой с друзьями!
Видеоуроки
Поиск по меткам
Access
apple watch
Multex
Power Query и Power BI
VBA управление кодами
Бесплатные надстройки
Дата и время
Записки
ИП
Надстройки
Печать
Политика Конфиденциальности
Почта
Программы
Работа с приложениями
Разработка приложений
Росстат
Тренинги и вебинары
Финансовые
Форматирование
Функции Excel
акции MulTEx
ссылки
статистика