На чтение 4 мин. Просмотров 5.9k.
Содержание
- Между двумя столбцами
- Во всей книге
- Количество всех совпадений в двух диапазонах
Между двумя столбцами
=СУММПРОИЗВ(—(диапазон1=диапазон2))
Если вы хотите сравнить два столбца и подсчитать совпадения в соответствующих строках, вы можете использовать функцию СУММПРОИЗВ с помощью простого сравнения двух диапазонов. Например, если у вас есть значения в B5:B11 и D5:D11, и вы хотите рассчитать любые различия, вы можете использовать эту формулу:
=СУММПРОИЗВ(—(B5:B11=D5:D11))
Функция СУММПРОИЗВ является универсальной функцией, которая обрабатывает массивы изначально без какого-либо специального синтаксиса массива. Ее поведение просто: она размножается, а затем подводит произведение массивов. В показанном примере выражение B5: B11 = D5: D11 будет генерировать массив, который содержит истинные и ложные ценности:
{ИСТИНА; ИСТИНА; ЛОЖЬ; ИСТИНА; ЛОЖЬ; ЛОЖЬ; ЛОЖЬ}
Обратите внимание, что у нас есть 3 Истинных значения, потому что есть 3 совпадения.
В этом состоянии, СУММПРОИЗВ фактически рассчитывает нулевое значение, так как истинные и ложные значения не учитываются как числа Excel по умолчанию. Чтобы получить СУММПРОИЗВ для представления ИСТИНА, как 1 и ЛОЖЬ как ноль, нам нужно «превратить» их в числа. Двойное отрицание является простым способом сделать это:
—(B5:B11=D5:D11)
После превращения, мы имеем:
{1; 1; 0; 1; 0; 0; 0}
При отсутствии других массивов для умножения, СУММПРОИЗВ просто суммирует значения и рассчитывает 3.
Для подсчета несовпадающих значений, вы можете полностью изменить логику так:
=СУММПРОИЗВ(—(B5:B11<>D5:D11))
Во всей книге
=СУММПРОИЗВ(СЧЁТЕСЛИ(ДВССЫЛ («‘»&листы&»‘!»&rng);критерии))
Для подсчета совпадений в всей книге, вы можете использовать формулу, основанную на функциях СЧЁТЕСЛИ и СУММПРОИЗВ. В показанном примере формула в D5 является:
=СУММПРОИЗВ(СЧЁТЕСЛИ(Лист1!B4:AL34; B5))
Количество всех совпадений в двух диапазонах
=СУММПРОИЗВ(СЧЁТЕСЛИ(диапазон1;диапазон2))
Если вы хотите сравнить два диапазона, и подсчитать общее количество совпадений между двумя диапазонами, вы можете использовать формулу, которая сочетает в себе функции СЧЁТЕСЛИ и СУММПРОИЗВ.
Контекст
Предположим, что у вас есть какой-то список, а также есть еще один список, содержащий некоторые из элементов первого списка. Вы нужна формула, которая анализирует значения во 2м списке, чтобы узнать, сколько из них появляются в первом списке. Вам не интересен порядок элементов — вы просто хотите знать, сколько элементов в списке 2 появится в списке 1.
Решение
Мы используем в ячейке G4 формулу:
= СУММПРОИЗВ(СЧЁТЕСЛИ (B5:B11; D5:D9))
Обратите внимание, что эта формула не заботится о местонахождении или порядке элементов в каждом диапазоне.
Функция СЧЁТЕСЛИ будет считать значения в диапазоне, которые соответствуют вашим критериям. Как правило, вы бы использовали СЧЁТ для диапазона A1: A10 и простой критерий, как «> 10». СЧЁТЕСЛИ затем рассчитывает количество ячеек в диапазоне A1: A10, которые больше, чем 10.
Однако, в этом случае, мы используем СЧЁТЕСЛИ для диапазона критериев. Мы не используем никаких логических операторов, а это значит, СЧЁТЕСЛИ будет проверять эквивалентности (т.е. он ведет себя так, как если бы мы использовали равенства (=) оператора).
Потому что мы даем СЧЁТЕСЛИ диапазон (также называемый «массив»), который содержит 7 пунктов, СЧЁТЕСЛИ рассчитывает массив из 7 элементов в качестве результата. Каждый элемент в массиве результатов представляет собой подсчет. В примере, это массив, который рассчитывает СЧЁТЕСЛИ выглядит следующим образом:
{1; 1; 0; 1; 1; 0; 0}
Теперь нам просто нужно сложить элементы в этом массиве, который является идеальной задачей для СУММПРОИЗВ. Функция СУММПРОИЗВ является универсальной функцией, которая обрабатывает массивы изначально без какого-либо специального синтаксиса массива.
Если вы используете СУММПРОИЗВ для двух или более массивов, он будет кратен массивам вместе, подведет итоги, и рассчитает число. В этом случае мы используем СУММПРОИЗВ только для одного массива, поэтому он просто суммирует элементы в массиве и рассчитывает 4 в качестве результата.
Совпадения по строкам
Если вы хотите сравнить два диапазона или столбца, и хотите считать совпадения на уровне строк (то есть рассчитывать только совпадения, когда тот же пункт появляется в том же положении), вы будет нужна другая формула.
Поиск совпадений в двух списках
Тема сравнения двух списков поднималась уже неоднократно и с разных сторон, но остается одной из самых актуальных везде и всегда. Давайте рассмотрим один из ее аспектов — подсчет количества и вывод совпадающих значений в двух списках. Предположим, что у нас есть два диапазона данных, которые мы хотим сравнить:
Для удобства, можно дать им имена, чтобы потом использовать их в формулах и ссылках. Для этого нужно выделить ячейки с элементами списка и на вкладке Формулы нажать кнопку Менеджер Имен — Создать (Formulas — Name Manager — Create). Также можно превратить таблицы в «умные» с помощью сочетания клавиш Ctrl+T или кнопки Форматировать как таблицу на вкладке Главная (Home — Format as Table).
Подсчет количества совпадений
Для подсчета количества совпадений в двух списках можно использовать следующую элегантную формулу:
В английской версии это будет =SUMPRODUCT(COUNTIF(Список1;Список2))
Давайте разберем ее поподробнее, ибо в ней скрыто пару неочевидных фишек.
Во-первых, функция СЧЁТЕСЛИ (COUNTIF). Обычно она подсчитывает количество искомых значений в диапазоне ячеек и используется в следующей конфигурации:
=СЧЁТЕСЛИ(Где_искать; Что_искать)
Обычно первый аргумент — это диапазон, а второй — ячейка, значение или условие (одно!), совпадения с которым мы ищем в диапазоне. В нашей же формуле второй аргумент — тоже диапазон. На практике это означает, что мы заставляем Excel перебирать по очереди все ячейки из второго списка и подсчитывать количество вхождений каждого из них в первый список. По сути, это равносильно целому столбцу дополнительных вычислений, свернутому в одну формулу:
Во-вторых, функция СУММПРОИЗВ (SUMPRODUCT) здесь выполняет две функции — суммирует вычисленные СЧЁТЕСЛИ совпадения и заодно превращает нашу формулу в формулу массива без необходимости нажимать сочетание клавиш Ctrl+Shift+Enter. Формула массива необходима, чтобы функция СЧЁТЕСЛИ в режиме с двумя аргументами-диапазонами корректно отработала свою задачу.
Вывод списка совпадений формулой массива
Если нужно не просто подсчитать количество совпадений, но и вывести совпадающие элементы отдельным списком, то потребуется не самая простая формула массива:
В английской версии это будет, соответственно:
=INDEX(Список1;MATCH(1;COUNTIF(Список2;Список1)*NOT(COUNTIF($E$1:E1;Список1));0))
Логика работы этой формулы следующая:
- фрагмент СЧЁТЕСЛИ(Список2;Список1), как и в примере до этого, ищет совпадения элементов из первого списка во втором
- фрагмент НЕ(СЧЁТЕСЛИ($E$1:E1;Список1)) проверяет, не найдено ли уже текущее совпадение выше
- и, наконец, связка функций ИНДЕКС и ПОИСКПОЗ извлекает совпадающий элемент
Не забудьте в конце ввода этой формулы нажать сочетание клавиш Ctrl+Shift+Enter, т.к. она должна быть введена как формула массива.
Возникающие на избыточных ячейках ошибки #Н/Д можно дополнительно перехватить и заменить на пробелы или пустые строки «» с помощью функции ЕСЛИОШИБКА (IFERROR).
Вывод списка совпадений с помощью слияния запросов Power Query
На больших таблицах формула массива из предыдущего способа может весьма ощутимо тормозить, поэтому гораздо удобнее будет использовать Power Query. Это бесплатная надстройка от Microsoft, способная загружать в Excel 2010-2013 и трансформировать практически любые данные. Мощь и возможности Power Query так велики, что Microsoft включила все ее функции по умолчанию в Excel начиная с 2016 версии.
Для начала, нам необходимо загрузить наши таблицы в Power Query. Для этого выделим первый список и на вкладке Данные (в Excel 2016) или на вкладке Power Query (если она была установлена как отдельная надстройка в Excel 2010-2013) жмем кнопку Из таблицы/диапазона (From Table):
Excel превратит нашу таблицу в «умную» и даст ей типовое имя Таблица1. После чего данные попадут в редактор запросов Power Query. Никаких преобразований с таблицей нам делать не нужно, поэтому можно смело жать в левом верхнем углу кнопку Закрыть и загрузить — Закрыть и загрузить в… (Close & Load To…) и выбрать в появившемся окне Только создать подключение (Create only connection):
Затем повторяем то же самое со вторым диапазоном.
И, наконец, переходим с выявлению совпадений. Для этого на вкладке Данные или на вкладке Power Query находим команду Получить данные — Объединить запросы — Объединить (Get Data — Merge Queries — Merge):
В открывшемся окне делаем три вещи:
- выбираем наши таблицы из выпадающих списков
- выделяем столбцы, по которым идет сравнение
- выбираем Тип соединения = Внутреннее (Inner Join)
После нажатия на ОК на экране останутся только совпадающие строки:
Ненужный столбец Таблица2 можно правой кнопкой мыши удалить, а заголовок первого столбца переименовать во что-то более понятное (например Совпадения). А затем выгрузить полученную таблицу на лист, используя всё ту же команду Закрыть и загрузить (Close & Load):
Если значения в исходных таблицах в будущем будут изменяться, то необходимо не забыть обновить результирующий список совпадений правой кнопкой мыши или сочетанием клавиш Ctrl+Alt+F5.
Макрос для вывода списка совпадений
Само-собой, для решения задачи поиска совпадений можно воспользоваться и макросом. Для этого нажмите кнопку Visual Basic на вкладке Разработчик (Developer). Если ее не видно, то отобразить ее можно через Файл — Параметры — Настройка ленты (File — Options — Customize Ribbon).
В окне редактора Visual Basic нужно добавить новый пустой модуль через меню Insert — Module и затем скопировать туда код нашего макроса:
Sub Find_Matches_In_Two_Lists() Dim coll As New Collection Dim rng1 As Range, rng2 As Range, rngOut As Range Dim i As Long, j As Long, k As Long Set rng1 = Selection.Areas(1) Set rng2 = Selection.Areas(2) Set rngOut = Application.InputBox(Prompt:="Выделите ячейку, начиная с которой нужно вывести совпадения", Type:=8) 'загружаем первый диапазон в коллекцию For i = 1 To rng1.Cells.Count coll.Add rng1.Cells(i), CStr(rng1.Cells(i)) Next i 'проверяем вхождение элементов второго диапазона в коллекцию k = 0 On Error Resume Next For j = 1 To rng2.Cells.Count Err.Clear elem = coll.Item(CStr(rng2.Cells(j))) If CLng(Err.Number) = 0 Then 'если найдено совпадение, то выводим со сдвигом вниз rngOut.Offset(k, 0) = rng2.Cells(j) k = k + 1 End If Next j End Sub
Воспользоваться добавленным макросом очень просто. Выделите, удерживая клавишу Ctrl, оба диапазона и запустите макрос кнопкой Макросы на вкладке Разработчик (Developer) или сочетанием клавиш Alt+F8. Макрос попросит указать ячейку, начиная с которой нужно вывести список совпадений и после нажатия на ОК сделает всю работу:
Более совершенный макрос подобного типа есть, кстати, в моей надстройке PLEX для Microsoft Excel.
Ссылки по теме
- Поиск различий в двух списках Excel
- Слияние двух списков без дубликатов (3 способа)
- Что такое макросы, как их использовать, куда копировать код макросов на Visual Basic
Подсчет количества вхождений значения
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 (по категориям)
Нужна дополнительная помощь?
Сравнение двух столбцов данных и подсчет всех совпадений или дубликатов в двух столбцах может быть обычной задачей для большинства из нас. Например, у вас есть два столбца с именами, некоторые имена появляются как в первом, так и во втором столбцах, теперь вы хотите подсчитать все совпадающие имена (совпадения, расположенные в любом месте в двух столбцах) между двумя столбцами, как показано на скриншоте ниже, этот учебник представит некоторые формулы для достижения этой цели в Excel.
- Подсчитайте все совпадения между двумя столбцами с помощью функций СУММПРОИЗВ и СЧЁТЕСЛИ
- Подсчитайте все совпадения между двумя столбцами с помощью функций СЧЁТ и ПОИСКПОЗ
- Подсчитайте все совпадения между двумя столбцами с помощью функций СУММПРОИЗВ, ЕЧИСЛО и ПОИСКПОЗ.
Подсчитайте все совпадения между двумя столбцами с помощью функций СУММПРОИЗВ и СЧЁТЕСЛИ
Чтобы подсчитать все совпадения между двумя столбцами, вам может помочь комбинация функций СУММПРОИЗВ и СЧЁТЕСЛИ, общий синтаксис:
=SUMPRODUCT(COUNTIF(range1,range2))
- range1, range2: Два диапазона содержат данные, по которым вы хотите подсчитать все совпадения.
Теперь введите или скопируйте приведенную ниже формулу в пустую ячейку и нажмите Enter ключ для получения результата:
=SUMPRODUCT(COUNTIF(A2:A12,C2:C12))
Пояснение к формуле:
= СУММПРОИЗВ (СЧЁТЕСЛИ (A2: A12; C2: C12))
- СЧЁТЕСЛИ (A2: A12; C2: C12): Эта функция СЧЁТЕСЛИ проверяет, существует ли каждое имя из столбца C в столбце A. Если имя существует, отображается число 1, в противном случае отображается число 0. Функция вернет следующий результат: {1; 1; 0; 0; 0; 1; 0; 0; 1; 0; 1}.
- SUMPRODUCT(COUNTIF(A2:A12,C2:C12))=SUMPRODUCT({1;1;0;0;0;1;0;0;1;0;1}): Функция СУММПРОИЗВ суммирует все элементы в этом массиве и получает результат: 5.
Подсчитайте все совпадения между двумя столбцами с помощью функций СЧЁТ и ПОИСКПОЗ
С помощью комбинации функций СЧЁТ и ПОИСКПОЗ вы также можете получить количество совпадений между двумя столбцами, общий синтаксис:
{=COUNT(MATCH(range1,range2,0))}
Array formula, should press Ctrl + Shift + Enter keys together.
- range1, range2: Два диапазона содержат данные, по которым вы хотите подсчитать все совпадения.
Введите или скопируйте следующую формулу в пустую ячейку и нажмите Shift + Ctrl + Enter вместе, чтобы получить правильный результат, см. снимок экрана:
=COUNT(MATCH(A2:A12,C2:C12,0))
Пояснение к формуле:
= СЧЁТ (ПОИСКПОЗ (A2: A12; C2: C12,0))
- ПОИСКПОЗ (A2: A12; C2: C12,0): Эта функция ПОИСКПОЗ будет искать имена из столбца A в столбце C и возвращать положение каждого совпадающего значения. Если значение не найдено, отображается значение ошибки. Итак, вы получите следующий список массивов: {11; 2; # N / A; # N / A; # N / A; 6; 1; # N / A; # N / A; # N / A; 9}.
- COUNT(MATCH(A2:A12,C2:C12,0))= COUNT({11;2;#N/A;#N/A;#N/A;6;1;#N/A;#N/A;#N/A;9}): Функция COUNT подсчитает числа в списке массивов, чтобы получить результат: 5.
Подсчитайте все совпадения между двумя столбцами с помощью функций СУММПРОИЗВ, ЕЧИСЛО и ПОИСКПОЗ.
В Excel вы можете попытаться найти совпадения в двух столбцах и посчитать их, используя функции СУММПРОИЗВ, ЕЧИСЛО и ПОИСКПОЗ, общий синтаксис следующий:
=SUMPRODUCT(—(ISNUMBER(MATCH(range1,range2,0))))
- range1, range2: Два диапазона содержат данные, по которым вы хотите подсчитать все совпадения.
Введите или скопируйте приведенную ниже формулу в пустую ячейку, чтобы вывести результат, а затем нажмите Enter ключ для возврата расчета, см. снимок экрана:
=SUMPRODUCT(—(ISNUMBER(MATCH(A2:A12,C2:C12,0))))
Пояснение к формуле:
= СУММПРОИЗВ (- (ISNUMBER (MATCH (A2: A12; C2: C12,0))))
- ПОИСКПОЗ (A2: A12; C2: C12,0): Эта функция ПОИСКПОЗ будет искать имена из столбца A в столбце C и возвращать положение каждого совпадающего значения. Если значение не найдено, отображается значение ошибки. Итак, вы получите следующий список массивов: {11; 2; # N / A; # N / A; # N / A; 6; 1; # N / A; # N / A; # N / A; 9}.
- ISNUMBER(MATCH(A2:A12,C2:C12,0))= ISNUMBER({11;2;#N/A;#N/A;#N/A;6;1;#N/A;#N/A;#N/A;9}): Здесь функция ЕЧИСЛО преобразует числа в ИСТИНА, а другие значения в ЛОЖЬ в массиве. Итак, вы получите такой массив: {ИСТИНА; ИСТИНА; ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ИСТИНА; ИСТИНА; ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ИСТИНА}.
- — (ISNUMBER (MATCH (A2: A12, C2: C12,0))) = — ({ИСТИНА; ИСТИНА; ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ИСТИНА; ИСТИНА; ЛОЖЬ; ЛОЖЬ; ЛОЖЬ; ИСТИНА}): — этот двойной отрицательный знак используется для преобразования значения ИСТИНА в 1 и значения Ложь в 0 и возвращает следующий результат: {1; 1; 0; 0; 0; 1; 1; 0; 0; 0; 1}.
- SUMPRODUCT(—(ISNUMBER(MATCH(A2:A12,C2:C12,0))))=SUMPRODUCT({1;1;0;0;0;1;1;0;0;0;1}): Наконец, функция СУММПРОИЗВ просуммирует все элементы в этом массиве и получит результат: 5.
Используемая относительная функция:
- SUMPRODUCT:
- Функцию СУММПРОИЗВ можно использовать для умножения двух или более столбцов или массивов вместе, а затем получения суммы произведений.
- COUNTIF:
- Функция СЧЁТЕСЛИ — это статистическая функция в Excel, которая используется для подсчета количества ячеек, соответствующих критерию.
- СЧИТАТЬ:
- Функция COUNT используется для подсчета количества ячеек, содержащих числа, или для подсчета чисел в списке аргументов.
- МАТЧ:
- Функция ПОИСКПОЗ в Microsoft Excel ищет определенное значение в диапазоне ячеек и возвращает относительное положение этого значения.
- НОМЕР:
- Функция ЕЧИСЛО возвращает ИСТИНА, если ячейка содержит число, и ЛОЖЬ, если нет.
Другие статьи:
- Подсчет совпадений между двумя столбцами
- Например, у меня есть два списка данных в столбце A и столбце C, теперь я хочу сравнить два столбца и подсчитать, найдено ли значение в столбце A в столбце C в той же строке, что и на скриншоте ниже. В этом случае функция СУММПРОИЗВ может быть лучшей функцией для решения этой задачи в Excel.
- Подсчитать количество ячеек, содержащих определенный текст в Excel
- Предположим, у вас есть список текстовых строк, и вы можете захотеть найти количество ячеек, которые содержат определенный текст как часть своего содержимого. В этом случае вы можете использовать подстановочные знаки (*), которые представляют любые тексты или символы в ваших критериях при применении функции СЧЁТЕСЛИ. В этой статье я расскажу, как использовать формулы для решения этой задачи в Excel.
- Подсчитайте количество ячеек, не равное множеству значений в Excel
- В Excel вы можете легко получить количество ячеек, не равное определенному значению, используя функцию СЧЁТЕСЛИ, но пробовали ли вы когда-нибудь подсчитать количество ячеек, которые не равны множеству значений? Например, я хочу получить общее количество продуктов в столбце A, но исключить конкретные элементы в C4: C6, как показано на скриншоте ниже. В этой статье я представлю несколько формул для решения этой задачи в Excel.
Лучшие инструменты для работы в офисе
Kutools for Excel — Помогает вам выделиться из толпы
Хотите быстро и качественно выполнять свою повседневную работу? Kutools for Excel предлагает 300 мощных расширенных функций (объединение книг, суммирование по цвету, разделение содержимого ячеек, преобразование даты и т. д.) и экономит для вас 80 % времени.
- Разработан для 1500 рабочих сценариев, помогает решить 80% проблем с Excel.
- Уменьшите количество нажатий на клавиатуру и мышь каждый день, избавьтесь от усталости глаз и рук.
- Станьте экспертом по Excel за 3 минуты. Больше не нужно запоминать какие-либо болезненные формулы и коды VBA.
- 30-дневная неограниченная бесплатная пробная версия. 60-дневная гарантия возврата денег. Бесплатное обновление и поддержка 2 года.
Вкладка Office — включение чтения и редактирования с вкладками в Microsoft Office (включая Excel)
- Одна секунда для переключения между десятками открытых документов!
- Уменьшите количество щелчков мышью на сотни каждый день, попрощайтесь с рукой мыши.
- Повышает вашу продуктивность на 50% при просмотре и редактировании нескольких документов.
- Добавляет эффективные вкладки в Office (включая Excel), точно так же, как Chrome, Firefox и новый Internet Explorer.
Комментарии (1)
Номинальный 5 из 5
·
рейтинги 1
Как посчитать количество повторяющихся значений в 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.