Mam dwa arkusze z następującymi strukturami danych:
sheet a) Id Name abn address sheet b) Id Name abn address
1 AA 123 ac 25 ad 124 ab
015 Ac 125 aw 02 aa 123 ac
26 3m az 8 aap 234 df
32 im 98 op 17 aj aw
230 aap 234 df 15 3m 160 az
Muszę znaleźć zduplikowane wartości z arkusza b na arkuszu a.
próbowałem countif
, match
, vlookup
, i index
Funkcje,
ale nadal nie jestem zadowolony z wyniku.
Potrzebujesz pozycji, ponieważ duplikat jest powtarzany ponad 3 razy, znajdź dokładny identyfikator pozycji dla tego duplikatu. Jak znaleźć zduplikowane wartości z dwóch różnych arkuszy?
microsoft-excel
worksheet-function
Nikola Karcev
źródło
źródło
sheet a
dopasowuje dowolny wierszsheet b
we wszystkich czterech kolumnach –– więc musisz pokazać je wszystkie? Czy szukasz wszystko zduplikowane wartości, takie jaka.Name[3]
=3m
=b.Name[5]
,a.Name[5]
=aap
=b.Name[3]
,a.Name[1]
=AA
=b.Name[2]
=aa
(bez rozróżniania wielkości liter),a.Id[2]
=015
=b.Id[5]
=15
(ignoruj wiodące zera),a.abn[1]
=123
=b.abn[2]
,a.abn[3]
= (puste) =b.abn[4]
i wszystkie mecze waddress
kolumna? Czy interesuje Cię tylko jedna kolumna? … (nieprzerwany)Odpowiedzi:
Wygląda na to, że wszystko jest w porządku z kilkoma duplikatami, ale dla każdego powyżej 3, chcesz je zobaczyć.
Przygotowałem UDF o nazwie „xMatch”, który może ci pomóc. Podobnie jak Match, ponieważ zwraca pozycję wartości, ale pozwala określić, czy chcesz znaleźć n-ty wartość (np. trzeci duplikat).
Aby to działało, musisz wstawić ten kod do modułu (wyjaśniam, jak poniżej, jeśli nie znasz):
Aby umieścić ten kod, naciśnij Alt + F11 z pliku Excela, a otworzy się edytor VBA. Na pasku narzędzi wybierz Wstawić i wybierz Moduł .
Otwórz nowy moduł i wklej kod w!
Teraz, gdy wpiszesz „= xMatch (” w komórce, pozwoli Ci użyć nowej formuły.
Mam nadzieję że to pomoże!
źródło