Zliczaj pary wartości w programie Excel


0

Mam zestaw danych w Excelu, gdzie każdy wiersz ma (między innymi) dwie wartości i chcę wygenerować posortowaną listę wszystkich par.

Przykładowe dane:

Val1  Val2
------------
A     B
B     A
C     A
B     C
A     B
C     A
etc..

Przykładowy wynik:

Val1  Val2  Count
------------------
A     B     2
B     A     1
B     C     1
C     A     2

Czy można to zrobić bez pisania kodu VBA.

Edytować: Powinienem dodać, że mój zbiór danych rośnie i wolałbym rozwiązanie, które aktualizowałoby się automatycznie po wprowadzeniu nowych danych.


Czy mogę zapytać, dlaczego niechęć do kodu VBA?
Samy Bencherif

Odpowiedzi:


1

Najprostszym sposobem jest połączenie dwóch kolumn razem, wykonaj polecenie a COUNTIF() w tej kolumnie i ostatecznie usuń wszystkie zduplikowane wiersze.

example screenshot


0

Załóżmy, że wiersz 1 to wiersz nagłówka, a wiersz 2 to pierwszy wiersz danych ( A B ).

Kroki

  1. Wpisz w D2: =A2 & "|||" & B2 i skopiuj do D3: D999
    (Użyj jakiegoś rzadkiego łańcucha, takiego jak "|||" )

  2. Wpisz C2: =COUNTIF(D:D, D2) i skopiuj do C3: C999

  3. Skopiuj kolumnę C: C, a następnie Wklej specjalnie jako wartość do kolumny C: C ( Alt-E > S > V > Enter )

  4. Wybierz kolumnę A: D, a następnie sortuj według kolumny D

  5. Wpisz E2: =IF(OR(ROW(D2)=2, C2=1, AND(C2>1,D2<>D1)), "Keep", "Delete") i skopiuj do E3: E999

  6. Włącz autofiltr ( Alt-D > F > F )

  7. Wybierz „Usuń” z listy rozwijanej E kolumny

  8. Wybierz wiersz 2: 999, a następnie kliknij prawym przyciskiem myszy & gt; Kasować
    (Trochę #REF! może być pokazany w kolumnie E, co jest normalne)

  9. Wyłącz autofiltr ( Alt-D > F > F )

  10. Usuń fikcyjną kolumnę D: E


0

Użyj countifs makro.

Oryginalna tabela:

      A     B
    Val1  Val2
    ------------
 1  A     B
 2  B     A
 3  C     A
 4  B     C
 5  A     B
 6  C     A
    etc...

Makro w tym przypadku to:

=COUNTIFS(A1:A6, A1, B1:B6, B1)

Który brzmi: „Jeśli w zakresie A1: A6 jest A, a jeśli w zakresie B1: B6 jest B, policz.”

Spowoduje to coś takiego (z LICZNIKAMI w kolumnie G):

      E    F     G
    Val1  Val2  Count
    ------------------
 1  A     B     2
 2  B     A     1
 3  B     C     1
 4  C     A     2

Można ustawić zakresy absolutnie:

=COUNTIFS($A$1:$A$6, A1, $B$1:$B$6, B1)

Lub użyj tabeli prawdy (lub klucza), aby COUNTIFS nie odnosi się do siebie.

      H    I    
    Keys1 Keys2 
    ------------
 1  A     A     
 2  B     B     
 3  C     C

Co pomogłoby stworzyć liczniki, które zbierałyby dane z oryginalnego zbioru danych, ale porównałyby się do tabeli referencyjnej, tak jak poniżej:

=COUNTIFS($A$1:$A$6, H1, $B$1:$B$6, I1)

To jest to samo, ale teraz dane w tabeli mogą być aktualizowane i sortowane bez tworzenia COUNTIFS niedokładny.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.