Przejdź do głównej zawartości

Jak usunąć zduplikowane wiersze i zachować najwyższe wartości tylko w programie Excel?

Na przykład masz tabelę zakupów w programie Excel, jak pokazano na pierwszym zrzucie ekranu. Teraz musisz usunąć zduplikowane wiersze na podstawie kolumny Owoce i zachować najwyższe wartości odpowiednich owoców w kolumnie Ilość, jak pokazano na drugim zrzucie ekranu. Jakieś rozwiązanie, które możesz wymyślić? W tym artykule przedstawimy dwie sztuczki, aby go rozwiązać.

Usuń zduplikowane wiersze i zachowaj najwyższe wartości tylko w VBA

Usuń zduplikowane wiersze i zachowaj najwyższe wartości tylko z Kutools for Excel

Z łatwością usuwaj zduplikowane wiersze na podstawie kryteriów w jednej kolumnie i zachowuj tylko najwyższe wartości w programie Excel

Kutools dla Excela Zaawansowane wiersze łączenia narzędzie może pomóc użytkownikom programu Excel szybko znaleźć maksymalną wartość minimalnej wartości każdego elementu w innej kolumnie.

ad zaawansowane łączenie wierszy maks

To narzędzie Zaawansowane łączenie wierszy może również łączyć wiersze i oddzielne wartości według określonych znaków lub łączyć wiersze i obliczać ich sumy, liczbę wystąpień, wartości maksymalne / minimalne, średnie itp.


Przypuśćmy, że masz tabelę pokazaną na poniższym zrzucie ekranu. Ta metoda wprowadzi makro VBA, aby usunąć zduplikowane wiersze na podstawie określonej kolumny i zachować najwyższe wartości tylko w innej kolumnie w programie Excel. Wykonaj następujące czynności:

1. wciśnij inny + F11 klawisze jednocześnie, aby otworzyć okno Microsoft Visual Basic for Applications.

2. kliknij wstawka > Modułi wklej następujący kod do nowego otwierającego okna modułu.

VBA: Usuń zduplikowane wiersze i zachowaj najwyższe wartości

Public Sub DelDupes()
Dim xFilterRg As Range
Dim xCriteriaRg As Range
Dim xAddress As String
Dim xSUpdate As Boolean
On Error Resume Next
xAddress = Application.ActiveWindow.RangeSelection.Address
Set xFilterRg = Application.InputBox("Please select a range:", "Kutools for Excel", xAddress, , , , , 8)
If xFilterRg Is Nothing Then Exit Sub
Set xFilterRg = Application.Intersect(ActiveSheet.UsedRange, xFilterRg)
If xFilterRg Is Nothing Then Exit Sub
On Error GoTo 0
xSUpdate = Application.ScreenUpdating
Application.ScreenUpdating = False
Set xCriteriaRg = ActiveSheet.Cells(1, xFilterRg.Column + xFilterRg.Columns.Count).Resize(2)
xCriteriaRg.Resize(1).Offset(1).Formula = "=COUNTIF(" & xFilterRg(2, 1).Address & ":" & _
xFilterRg(2, 1).Address(False, False) & "," & _
xFilterRg(2, 1).Address(False, False) & ")>1"
With xFilterRg
.Sort key1:=xFilterRg.Cells(1, 1).Offset(0, 1), order1:=xlDescending, Header:=xlYes
.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=xCriteriaRg
.Offset(1).SpecialCells(xlCellTypeVisible).EntireRow.Delete
.Parent.ShowAllData
End With
xCriteriaRg.Clear
Application.ScreenUpdating = xSUpdate
End Sub

3. wciśnij F5 lub kliknij run przycisk, aby uruchomić ten VBA.

4. Teraz pojawia się okno dialogowe. Wybierz kolumny, według których chcesz usunąć zduplikowane wiersze, i zarezerwuj najwyższe wartości, a następnie kliknij OK przycisk.

W naszym przypadku usuniemy zduplikowane wiersze według kolumny owoców i zachowamy najwyższe wartości w kolumnie Amount, dlatego wybieram kolumnę Fruit i Amount, jak pokazano na powyższym zrzucie ekranu.

Następnie zobaczysz, że zduplikowane wiersze są usuwane na podstawie kolumny Owoce, a najwyższe wartości odpowiednich owoców są przechowywane w kolumnie Kwota. Zobacz zrzut ekranu:

Uwagi:

(1) Określony zakres musi zaczynać się od kolumny, według której usuniesz zduplikowane wiersze.

(2) Ten VBA może zachować tylko najwyższe wartości w kolumnie tuż za kolumną, według której usunięto zduplikowane wiersze.

(3) Ten VBA nie działa w programie Microsoft Excel 2007.


Powyższy VBA może nie być wystarczająco łatwy dla niektórych użytkowników i może zachować najwyższe wartości tylko w kolumnie za kolumną kryteriów. Ale Kutools dla Excela Zaawansowane wiersze łączenia narzędzie pomoże ci łatwo rozwiązać ten problem.

Kutools dla programu Excel - Zawiera ponad 300 niezbędnych narzędzi dla programu Excel. Ciesz się w pełni funkcjonalnym 30-dniowym DARMOWYM okresem próbnym bez karty kredytowej! Pobierz teraz!

1. Wybierz tabelę, z której chcesz usunąć zduplikowane wiersze i zachowaj najwyższe wartości (w naszym przypadku wybierz A1: C24) i kliknij Kutools > Treść > Zaawansowane wiersze łączenia.

2. W otwartym oknie dialogowym Połącz wiersze na podstawie kolumny skonfiguruj w następujący sposób:

(1) Wybierz kolumnę Owoce (według której usuniesz zduplikowane wiersze), a następnie kliknij Główny klucz przycisk;

(2) Wybierz kolumnę Kwota (w której zachowasz najwyższe wartości), a następnie kliknij Obliczać > Max.

(3) Określ reguły kombinacji dla innych kolumn, jeśli potrzebujesz.

doc usuń duplikaty zachowaj najwyższą wartość 2

3. Kliknij Ok przycisk. Następnie zobaczysz, że wszystkie zduplikowane wiersze są usuwane na podstawie kolumny owoców i tylko maksymalne wartości odpowiednich owoców są przechowywane w kolumnie Ilość. Zobacz zrzut ekranu:

Połączenia Zaawansowane wiersze łączenia narzędzie Kutools dla programu Excel może z łatwością łączyć wiersze według jednej kolumny, a następnie obliczać inne kolumny również na podstawie tych kolumn, takie jak Suma, Liczba, Max, Min, Produkt itp. Kliknij na 60-dniowy bezpłatny okres próbny, bez ograniczeń!


Kutools dla programu Excel: Ponad 300 przydatnych narzędzi na wyciągnięcie ręki! Już dziś rozpocznij 30-dniowy bezpłatny okres próbny bez ograniczeń funkcji. Pobierz teraz!

Najlepsze narzędzia biurowe

🤖 Pomocnik AI Kutools: Zrewolucjonizuj analizę danych w oparciu o: Inteligentne wykonanie   |  Wygeneruj kod  |  Twórz niestandardowe formuły  |  Analizuj dane i generuj wykresy  |  Wywołaj funkcje Kutools...
Popularne funkcje: Znajdź, wyróżnij lub zidentyfikuj duplikaty   |  Usuń puste wiersze   |  Łącz kolumny lub komórki bez utraty danych   |   Okrągły bez wzoru ...
Super wyszukiwanie: Wiele kryteriów VLookup    Wiele wartości VLookup  |   Przeglądanie pionowe na wielu arkuszach   |   Wyszukiwanie rozmyte ....
Zaawansowana lista rozwijana: Szybko twórz listę rozwijaną   |  Zależna lista rozwijana   |  Lista rozwijana wielokrotnego wyboru ....
Menedżer kolumn: Dodaj określoną liczbę kolumn  |  Przesuń kolumny  |  Przełącz stan widoczności ukrytych kolumn  |  Porównaj zakresy i kolumny ...
Polecane funkcje: Fokus siatki   |  Widok projektu   |   Duży pasek formuły    Menedżer skoroszytów i arkuszy   |  Biblioteka zasobów (Automatyczny tekst)   |  Selektor dat   |  Połącz arkusze   |  Szyfruj/odszyfruj komórki    Wysyłaj e-maile według listy   |  Super filtr   |   Specjalny filtr (filtruj pogrubienie/kursywa/przekreślenie...) ...
15 najlepszych zestawów narzędzi12 Tekst Tools (Dodaj tekst, Usuń znaki, ...)   |   50 + Wykres rodzaje (Wykres Gantta, ...)   |   40+ Praktyczne Wzory (Oblicz wiek na podstawie urodzin, ...)   |   19 Wprowadzenie Tools (Wstaw kod QR, Wstaw obraz ze ścieżki, ...)   |   12 Konwersja Tools (Liczby na słowa, Przeliczanie walut, ...)   |   7 Połącz i podziel Tools (Zaawansowane wiersze łączenia, Podział komórki, ...)   |   ... i więcej

Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas.  Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...

Opis


Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę

  • Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
  • Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
  • Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!
Comments (1)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
in VBA example, the date column doesn't filter. please advise.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations