Spis treści
Ten krótki tutorial wyjaśnia, jak usunąć co drugi wiersz w Excelu poprzez filtrowanie lub za pomocą kodu VBA. Dowiesz się również, jak usunąć każdy 3, 4 lub dowolny inny N-ty wiersz.
Istnieje wiele sytuacji, w których możesz potrzebować usunąć naprzemienne wiersze w arkuszach Excela. Na przykład możesz chcieć zachować dane dla tygodni parzystych (wiersze 2, 4, 6, 8 itd.) i przenieść wszystkie tygodnie nieparzyste (wiersze 3, 5, 7 itd.) do innego arkusza.
Ogólnie rzecz biorąc, usuwanie co drugiego wiersza w Excelu sprowadza się do zaznaczania naprzemiennych wierszy. Po zaznaczeniu wierszy, pojedyncze pociągnięcie na Usuń przycisk to wszystko. W dalszej części artykułu poznasz kilka technik szybkiego zaznaczania i usuwania co drugiego lub co N-tego wiersza w Excelu.
Jak usunąć każdy inny wiersz w programie Excel przez filtrowanie
Zasadniczo powszechny sposób usuwania każdego innego wiersza w programie Excel jest taki: najpierw filtrujesz naprzemienne wiersze, a następnie wybierasz je i usuwasz wszystkie naraz. Szczegółowe kroki następują poniżej:
- W pustej kolumnie obok oryginalnych danych wpisz ciąg zer i jedynek. Możesz to szybko zrobić, wpisując 0 w pierwszej komórce i 1 w drugiej, a następnie kopiując dwie pierwsze komórki i wklejając je w dół kolumny, aż do ostatniej komórki z danymi.
Ewentualnie można skorzystać z tego wzoru:
=MOD(ROW(),2)
Logika formuły jest bardzo prosta: funkcja ROW zwraca aktualny numer wiersza, funkcja MOD dzieli go przez 2 i zwraca resztę zaokrągloną do liczby całkowitej.
W rezultacie masz 0 we wszystkich parzystych rzędach (ponieważ są one podzielone przez 2 równomiernie bez reszty) i 1 we wszystkich nieparzystych rzędach:
- W zależności od tego, czy chcesz usunąć wiersze parzyste czy nieparzyste, odfiltruj jedynki lub zera.
Aby to zrobić, wybierz dowolną komórkę w kolumnie Pomocnik, przejdź do Dane tab> Sortowanie i filtrowanie grupę, a następnie kliknij przycisk Filtr We wszystkich komórkach nagłówka pojawią się strzałki filtrów rozwijanych. Klikamy przycisk strzałki w kolumnie Pomocnik i zaznaczamy jedno z pól:
- 0, aby usunąć wiersze parzyste
- 1 aby usunąć nieparzyste wiersze
W tym przykładzie zamierzamy usunąć wiersze z wartościami "0", więc je filtrujemy:
- Teraz, gdy wszystkie wiersze "1" są ukryte, zaznacz wszystkie widoczne wiersze "0", kliknij prawym przyciskiem myszy na zaznaczeniu i kliknij Usuń wiersz :
- Powyższy krok pozostawił Cię z pustą tabelą, ale nie martw się, wiersze "1" nadal tam są. Aby uczynić je ponownie widocznymi, po prostu usuń autofiltr, klikając przycisk Filtr ponownie przycisk:
- Formuła w kolumnie C przelicza się dla pozostałych wierszy, ale nie jest już potrzebna. Możesz teraz bezpiecznie usunąć kolumnę Pomocnik:
W rezultacie w naszym arkuszu pozostały tylko tygodnie parzyste, tygodnie nieparzyste zniknęły!
Wskazówka: Jeśli chcesz przenieść każdy inny wiersz w inne miejsce, a nie usuwać je całkowicie, najpierw skopiuj filtrowane wiersze i wklej je w nowe miejsce, a następnie usuń filtrowane wiersze.
Jak usunąć naprzemienne wiersze w programie Excel za pomocą VBA
Jeśli nie masz ochoty tracić czasu na trywialne zadanie, takie jak usuwanie co drugiego wiersza w arkuszach Excela, poniższe makro VBA może zautomatyzować ten proces za Ciebie:
Sub Delete_Alternate_Rows_Excel() Dim SourceRange As Range Set SourceRange = Application.Selection Set SourceRange = Application.InputBox( "Zakres:" , "Wybierz zakres" , SourceRange.Address, Type :=8) If SourceRange.Rows.Count>= 2 Then Dim FirstCell As Range Dim RowIndex As Integer Application.ScreenUpdating = False For RowIndex = SourceRange.Rows.Count - (SourceRange.Rows.Count Mod 2) To 1Krok -2 Set FirstCell = SourceRange.Cells(RowIndex, 1) FirstCell.EntireRow.Delete Next Application.ScreenUpdating = True End If End SubJak usunąć co drugi wiersz w Excelu za pomocą makra
Wstaw makro do swojego arkusza w zwykły sposób poprzez edytor Visual Basic:
- Naciśnij Alt + F11, aby otworzyć okno Visual Basic for Applications.
- Na górnym pasku menu kliknij Wkładka > Moduł i wkleić powyższe makro w Moduł
- Naciśnij klawisz F5, aby uruchomić makro.
- Pojawi się okno dialogowe z prośbą o wybranie zakresu. Wybierz swoją tabelę i kliknij OK:
Gotowe! Każdy inny wiersz w wybranym zakresie zostanie usunięty:
Jak usunąć każdy N-ty wiersz w programie Excel
W tym zadaniu zamierzamy rozszerzyć technikę filtrowania, którą zastosowaliśmy do usunięcia co drugiego wiersza. Różnica polega na formule, na której opiera się filtrowanie:
MOD(ROW()-. m , n )Gdzie:
- m jest numerem wiersza pierwszej komórki z danymi minus 1
- n jest N-tym wierszem, który chcesz usunąć
Załóżmy, że twoje dane zaczynają się w wierszu 2 i chcesz usunąć każdy 3 wiersz. Więc w twojej formule n wynosi 3, oraz m równa się 1 (rząd 2 minus 1):
=MOD(ROW() - 1, 3)
Jeśli nasze dane rozpoczęły się w wierszu 3, to m byłaby równa 2 (rząd 3 minus 1), i tak dalej. Ta poprawka jest potrzebna, aby kolejno numerować wiersze, zaczynając od numeru 1.
Formuła dzieli względną liczbę rzędową przez 3 i zwraca resztę po podziale. W naszym przypadku daje ona zero dla każdego trzeciego rzędu, ponieważ każda trzecia liczba dzieli się przez 3 bez reszty (3,6,9 itd.):
A teraz wykonujesz znane już czynności, aby filtrować wiersze "0":
- Zaznacz dowolną komórkę w tabeli i kliknij przycisk Filtr przycisk na Dane
- Filtruj kolumnę Helper, aby pokazać tylko wartości "0".
- Zaznacz wszystkie widoczne wiersze "0", kliknij prawym przyciskiem myszy i wybierz Usuń wiersz z menu kontekstowego.
- Usuń filtr i usuń kolumnę Helper.
W podobny sposób możesz usunąć każdy 4, 5 lub dowolny inny N-ty wiersz w Excelu.
W przypadku konieczności usunięcia wierszy z nieistotnymi danymi, pomocny będzie następujący poradnik: Jak usunąć wiersze na podstawie wartości komórki.
Dziękuję za przeczytanie i mam nadzieję, że za tydzień znów zobaczymy się na naszym blogu.