Formuła programu Excel: Policz unikalne daty -

Spisie treści

Formuła ogólna

=COUNT(UNIQUE(date))

Podsumowanie

Aby zliczyć unikalne daty (w tym przykładzie „dni handlowe”), można użyć funkcji UNIQUE z funkcją LICZ.JEŻELI lub formuły opartej na funkcji LICZ.JEŻELI. W przedstawionym przykładzie formuła w komórce G8 to:

=COUNT(UNIQUE(date))

gdzie data to nazwany zakres B5: B16.

Wyjaśnienie

Tradycyjnie liczenie unikatowych przedmiotów za pomocą formuły Excela było trudnym problemem, ponieważ nie było dedykowanej unikalnej funkcji. Jednak zmieniło się to, gdy do programu Excel 365 dodano tablice dynamiczne wraz z kilkoma nowymi funkcjami, w tym UNIQUE.

Uwaga: w starszych wersjach programu Excel można liczyć unikatowe elementy za pomocą funkcji LICZ.JEŻELI lub CZĘSTOTLIWOŚĆ, jak wyjaśniono poniżej.

W przedstawionym przykładzie każdy wiersz w tabeli reprezentuje transakcję na akcjach. Jeden kilka dat, więcej niż jedna transakcja jest wykonywana. Celem jest liczenie dni handlowych - liczba unikalnych dat, w których miał miejsce jakiś rodzaj handlu. Formuła w komórce G8 to:

=COUNT(UNIQUE(date))

Działając od wewnątrz, funkcja UNIQUE służy do wyodrębniania listy unikatowych dat z nazwanego zakresu „data”:

UNIQUE(date) // extract unique values

Wynikiem jest tablica zawierająca 5 liczb, takich jak ta:

(44105;44109;44111;44113;44116)

Każda liczba reprezentuje datę w programie Excel bez formatowania daty. Pięć dat to 1 października 20, 5 października 20, 7 października 20, 9 października 20 i 12 października 20.

Ta tablica jest dostarczana bezpośrednio do funkcji COUNT:

=COUNT((44105;44109;44111;44113;44116)) // returns 5

która zwraca liczbę wartości liczbowych, 5, jako wynik końcowy.

Uwaga: Funkcja COUNT zlicza wartości liczbowe, a funkcja COUNTA zlicza zarówno wartości liczbowe, jak i tekstowe. W zależności od sytuacji sensowne może być użycie jednego lub drugiego. W tym przypadku, ponieważ daty są liczbowe, używamy COUNT.

Z LICZ.JEŻELI

W starszej wersji programu Excel możesz użyć funkcji LICZ.JEŻELI do liczenia unikatowych dat za pomocą formuły takiej jak ta:

=SUMPRODUCT(1/COUNTIF(date,date))

Działając od wewnątrz, LICZ.JEŻELI zwraca tablicę z liczbą dla każdej daty na liście:

COUNTIF(date,date) // returns (2;2;3;3;3;2;2;2;2;3;3;3)

W tym momencie mamy:

=SUMPRODUCT(1/(2;2;3;3;3;2;2;2;2;3;3;3))

Po podzieleniu 1 przez tę tablicę otrzymujemy tablicę wartości ułamkowych:

(0.5;0.5;0.333333333333333;0.333333333333333;0.333333333333333;0.5;0.5;0.5;0.5;0.333333333333333;0.333333333333333;0.333333333333333)

Ta tablica jest dostarczana bezpośrednio przez funkcję SUMPRODUCT. SUMPRODUCT następnie sumuje elementy w tablicy i zwraca sumę, 5.

Z FREQUENCY

Jeśli pracujesz z dużym zbiorem danych, możesz mieć problemy z wydajnością z powyższą formułą LICZ.JEŻELI. W takim przypadku możesz przełączyć się na formułę tablicową opartą na funkcji FREQUENCY:

(=SUM(--(FREQUENCY(date,date)>0)))

Uwaga: to jest formuła tablicowa i należy ją wprowadzić za pomocą Ctrl + Shift + Enter, z wyjątkiem Excel 365.

Ta formuła obliczy szybciej niż wersja COUNTIF powyżej, ale będzie działać tylko z wartościami liczbowymi. Więcej szczegółów znajdziesz w tym artykule.

Interesujące artykuły...