Съдържание
В урока е разгледано как да използвате новите функции за динамични масиви за броене на уникални стойности в Excel: формула за броене на уникални записи в колона, с множество критерии, игнориране на празни полета и др.
Преди няколко години обсъдихме различни начини за преброяване на уникални и различни стойности в Excel. Но както всяка друга софтуерна програма, Microsoft Excel непрекъснато се развива и почти при всяка версия се появяват нови функции. Днес ще разгледаме как преброяването на уникални стойности в Excel може да се извърши с наскоро въведените функции за динамични масиви. Ако все още не сте използвали някоя от тези функции, можете даще се учудите, когато видите колко по-прости са формулите по отношение на изграждането и удобството за използване.
Забележка: Всички формули, разгледани в този урок, разчитат на функцията UNIQUE, която е налична само в Excel 365 и Excel 2021. Ако използвате Excel 2019, Excel 2016 или по-ранни версии, моля, разгледайте тази статия за решения.
Преброяване на уникалните стойности в колоната
Най-лесният начин да преброите уникалните стойности в дадена колона е да използвате функцията UNIQUE заедно с функцията COUNTA:
COUNTA(UNIQUE( обхват ))Формулата работи по следната проста логика: UNIQUE връща масив от уникални записи, а COUNTA преброява всички елементи на масива.
Като пример, нека преброим уникалните имена в диапазона B2:B10:
=COUNTA(UNIQUE(B2:B10))
Формулата ни казва, че в списъка с победителите има 5 различни имена:
Съвет. В този пример броим уникалните текстови стойности, но можете да използвате тази формула и за други типове данни, включително числа, дати, времена и т.н.
Преброяване на уникалните стойности, които се срещат само веднъж
В предишния пример преброихме всички различни (отделни) записи в дадена колона. Този път искаме да знаем броя на уникалните записи, които се появяват само веднъж . За да го направите, изградете формулата си по този начин:
За да получите списък с еднократни срещи, задайте третия аргумент на UNIQUE на TRUE:
UNIQUE(B2:B10,,TRUE))
За да преброите уникалните еднократни срещи, вмъкнете функцията UNIQUE във функцията ROW:
ROWS(UNIQUE(B2:B10,,TRUE))
Обърнете внимание, че COUNTA няма да работи в този случай, защото брои всички непразни клетки, включително стойностите за грешка. Така че, ако не са намерени никакви резултати, UNIQUE ще върне грешка, а COUNTA ще я брои като 1, което е погрешно!
За да се справите с евентуални грешки, обградете формулата с функцията IFERROR и я инструктирайте да изведе 0, ако възникне грешка:
=IFERROR(ROWS(UNIQUE(B2:B10,,TRUE)), 0)
В резултат на това получавате брой, базиран на концепцията за уникалност на базата данни:
Преброяване на уникални редове в Excel
След като вече знаете как да преброите уникалните клетки в дадена колона, имате ли идея как да намерите броя на уникалните редове?
Ето решението:
РЕДОВЕ (UNIQUE( обхват ))Трикът се състои в това да "подадете" целия диапазон на UNIQUE, така че да намери уникалните комбинации от стойности в няколко колони. След това просто включвате формулата във функцията ROWS, за да изчислите броя на редовете.
Например, за да преброим уникалните редове в диапазона A2:C10, използваме тази формула:
=ROWS(UNIQUE(A2:C10))
Преброяване на уникалните записи с игнориране на празните клетки
За да преброите уникалните стойности в Excel, като игнорирате празните места, използвайте функцията FILTER, за да филтрирате празните клетки, и след това я изкривете във вече познатата формула COUNTA UNIQUE:
COUNTA(UNIQUE(FILTER( обхват , обхват "")))При изходните данни в B2:B11 формулата има следния вид:
=COUNTA(UNIQUE(FILTER(B2:B11, B2:B11""))
Резултатът е показан на снимката на екрана по-долу:
Преброяване на уникални стойности с критерии
За да извлечете уникални стойности въз основа на определени критерии, отново използвайте функциите UNIQUE и FILTER заедно, както е обяснено в този пример. И след това използвайте функцията ROWS, за да преброите уникалните записи, и IFERROR, за да уловите всички видове грешки и да ги замените с 0:
IFERROR(ROWS(UNIQUE( обхват , criteria_range = критерии ))), 0)Например, за да откриете колко различни победители има в даден спорт, използвайте тази формула:
=IFERROR(ROWS(UNIQUE(FILTER(A2:A10,B2:B10=E1))), 0)
Където A2:A10 е диапазон за търсене на уникални имена ( обхват ), B2:B10 са спортовете, в които се състезават победителите ( criteria_range ), а E1 е спортът, който представлява интерес ( критерии ).
Преброяване на уникални стойности с множество критерии
Формулата за преброяване на уникални стойности въз основа на множество критерии е много подобна на тази в горния пример, въпреки че критериите са конструирани по малко по-различен начин:
IFERROR(ROWS(UNIQUE( обхват , ( criteria_range1 = критерии1 ) * ( criteria_range2 = критерии2 )))), 0)Тези, които са любопитни да се запознаят с вътрешната механика, могат да намерят обяснение на логиката на формулата тук: Намиране на уникални стойности въз основа на множество критерии.
В този пример ще разберем колко различни победители има в определен спорт във Формула 1 ( критерии 1 ) и под възрастта във F2 ( критерии 2 ). За тази цел използваме тази формула:
=IFERROR(ROWS(UNIQUE(FILTER(A2:A10, (B2:B10=F1) * (C2:C10
Където A2:B10 е списъкът с имена ( обхват ), C2:C10 са спортни ( criteria_range 1 ), а D2:D10 са възрасти ( criteria_range 2 ).
Ето как да преброите уникалните стойности в Excel с новите функции за динамични масиви. Сигурен съм, че оценявате колко по-прости стават всички решения. Както и да е, благодарим ви, че прочетохте, и се надяваме да се видим в нашия блог следващата седмица!
Практическа работна тетрадка за изтегляне
Примери за формула за броене на уникални стойности (.xlsx файл)