VBA Usuń wiersz

W programie Excel, aby usunąć dowolny wiersz, mamy skrót do używania CTRL + - lub możemy wybrać wiersz i kliknąć go prawym przyciskiem myszy i usunąć. Ale w VBA zrobiliśmy to, pisząc dla niego kod. Metodą usuwania wiersza w VBA jest najpierw określenie, który wiersz należy usunąć, a następnie możemy go usunąć. W tym artykule dowiemy się o różnych ilustracjach dotyczących usuwania wiersza w języku VBA.

W VBA Usuń wiersz służy do usunięcia zestawu wierszy lub pojedynczego wiersza, w zależności od sytuacji. Podobnie jak w arkuszu programu Excel, możemy użyć makr lub języka VBA, aby usunąć wiersze w arkuszu programu Excel. Pomaga to, gdy mamy wiele danych i nie możemy tego zrobić ręcznie.

Składnia usuwania wiersza w programie Excel VBA

Składnia usuwania wiersza w programie Excel jest następująca.

Worksheets.Rows (Row #). Delete

Istnieją również inne metody usuwania wierszy za pomocą VBA, takie jak poniżej.

Zakres („komórka”). EntireRow.Delete

Powyższa instrukcja zrobi to, że usunie wiersz dla danego wiersza. Na przykład, jeśli napiszemy Zakres („A1”). EntireRow.Delete, wówczas pierwszy wiersz zostanie usunięty, ponieważ komórka A1 należy do pierwszego wiersza.

Możemy również użyć wierszy (liczba_wierszy). Usuń, aby usunąć wiersz.

Jak usunąć wiersz w programie Excel za pomocą VBA?

Poniżej znajdują się przykłady usuwania wiersza w programie Excel za pomocą VBA.

Możesz pobrać ten szablon Excela Usuń wiersz VBA tutaj - Szablon Excela Usuń wiersz VBA

Wiersz usuwania VBA - przykład nr 1

Użyjmy pierwszej prostej metody usuwania wierszy. Dla celów demonstracyjnych wprowadzę losową wartość w komórkach A1 i B1. Spójrz na to poniżej.

Chcę zobaczyć, jeśli użyję kodu zapisanego powyżej, cały wiersz zostanie usunięty lub pojedyncza komórka zostanie usunięta.

Uwaga: Aby korzystać z Excel VBA, musimy mieć włączoną kartę programisty na karcie Pliki w sekcji opcji.

Wykonaj poniższe kroki, aby usunąć wiersz w programie Excel za pomocą VBA.

Krok 1: Przejdź do zakładki programisty, kliknij Visual Basic, aby otworzyć VBA Editor.

Krok 2: W segmencie kodu zadeklaruj podfunkcję, aby rozpocząć pisanie kodu.

Kod:

 Sub Sample () End Sub 

Krok 3: Teraz napisz następujący kod, aby usunąć wiersz.

Kod:

 Sub Próbka () Zakres („A1”). EntireRow.Delete End Sub 

Krok 4: Uruchom ten kod, naciskając klawisz F5 lub Run i zobacz wynik.

Po uruchomieniu kodu możemy zobaczyć, że wartości zarówno z komórki A1, jak i B1 są usuwane, ponieważ cały pierwszy wiersz został usunięty.

Wiersz usuwania VBA - przykład 2

Wcześniej w pierwszym przykładzie usunąłem tylko jeden wiersz. Ale co jeśli musimy usunąć wiele wierszy. Dla celów demonstracyjnych mam następujące dane, jak pokazano poniżej,

Chcę usunąć wszystkie pierwsze pięć wierszy. Wykonaj poniższe kroki, aby usunąć wiersz w programie Excel za pomocą VBA.

Krok 1: W zakładce programisty kliknij Visual Basic, aby otworzyć VBA Editor.

Krok 2: W kodzie zadeklaruj podfunkcję, aby rozpocząć pisanie kodu,

Kod:

 Sub Sample1 () End Sub 

Krok 3: Napisz poniższy kod, aby usunąć całe pięć wierszy.

Kod:

 Sub Próbka 1 () Zakres („A1: B5”). EntireRow.Delete End Sub 

Krok 4: Uruchom ten kod, naciskając klawisz F5 lub Run i zobacz wynik.

Po uruchomieniu kodu widzimy następujący wynik: Całe dane zostały usunięte, oznacza to, że pierwsze pięć wierszy zostało usuniętych, ponieważ mieliśmy dane w pierwszych pięciu wierszach.

Uwaga: wstawię dane z powrotem do przykładowego arkusza programu Excel do celów demonstracyjnych.

Wiersz usuwania VBA - przykład 3

Teraz mamy dane dla pracowników, a ich sprzedaż odbywa się za trzy miesiące: styczeń, luty i marzec. Jeden z pracowników był na urlopie i nie mógł prowadzić sprzedaży przez trzy miesiące, więc komórki są dla niego puste. Naszym celem jest znalezienie tego pustego wiersza i usunięcie go z danych.

Spójrz na poniższe dane,

Wykonaj poniższe kroki, aby usunąć wiersz w programie Excel za pomocą VBA.

Krok 1: Na karcie programisty kliknij Visual Basic, aby otworzyć edytor Visual Basic.

Krok 2: Zadeklaruj podfunkcję w oknie kodu, aby rozpocząć pisanie kodu,

Kod:

 Sub Sample2 () End Sub 

Krok 3: Napisz następujący kod, aby usunąć wiersze z pustymi komórkami.

Kod:

 Sub Próbka 2 () Zakres („A1: D5”). Komórki specjalne (xlCellTypeBlanks) .EntireRow.Delete End Sub 

SpecialCells to funkcja w VBA, która zwraca nam wszystkie komórki, które pasują do naszych warunków, a naszym warunkiem były puste komórki w tym zakresie, więc użyliśmy funkcji xlCellTypeBlanks.

Krok 4: Uruchom ten kod, naciskając klawisz F5 lub Run i zobacz wynik.

Po uruchomieniu kodu możemy zobaczyć, że wiersz zawierający puste komórki został usunięty.

Uwaga: Ponownie wstawię dane z powrotem do przykładowego arkusza programu Excel do celów demonstracyjnych.

Wiersz usuwania VBA - przykład 4

Istnieją inne podobne metody usuwania wierszy, takie jak użycie funkcji wiersze i usuwanie. Na przykład mamy dane w wierszu 4 i chcę usunąć wiersz 4. Możemy wydać polecenie excela, aby usunąć czwarty wiersz w danych. Spójrz na zrzut ekranu poniżej. Mam losowe dane w wierszu 4 w pierwszej komórce.

Wykonaj poniższe kroki, aby usunąć wiersz w programie Excel za pomocą VBA.

Krok 1: Otwórz edytor VBA, klikając Visual Basic z zakładki programisty,

Krok 2: Zadeklaruj podfunkcję, aby rozpocząć pisanie kodu.

Kod:

 Sub Sample3 () End Sub 

Krok 3: Napisz następujący kod, aby usunąć czwarty wiersz.

Kod:

 Sub Sample3 () Rows (4). Usuń End Sub 

Krok 4: Uruchom ten kod, naciskając klawisz F5 lub Run i zobacz wynik.

Dane zostały usunięte, ponieważ sam 4. wiersz został usunięty.

Wiersz usuwania VBA - przykład 5

W powyższym kodzie podaliśmy zakres lub wiersz do usunięcia w samym kodzie. Teraz weźmy dane wejściowe od użytkownika, który może usunąć wiersz z danych. Na przykład mam dane pracowników i sprzedaży zrobiłem jak poniżej i chcę, aby użytkownik wybrał zakres od tego, ile danych użytkownik chce usunąć wiersze z pustymi komórkami. Spójrz na poniższe dane,

Wykonaj poniższe kroki, aby usunąć wiersz w programie Excel za pomocą VBA.

Krok 1: Otwórz edytor VB, klikając Visual Basic na karcie programisty,

Krok 2: Zadeklaruj podfunkcję, aby rozpocząć pisanie kodu.

Kod:

 Sub Sample4 () End Sub 

Krok 2: Zadeklaruj dwie zmienne jako zakres, A i B.

Kod:

 Sub Sample4 () Dim A As Range Dim B As Range End Sub 

Krok 3: Aby uzyskać dane wejściowe od użytkownika w zakresie wyboru zakresu do usunięcia, użyjemy funkcji pola wprowadzania i zapiszemy tę informację w zmiennej zdefiniowanej powyżej.

Kod:

 Sub Sample4 () Dim A As Range Dim B As Range Set A = Application.InputBox („Select Data”, „Sample Macro”, Type: = 8) End Sub 

Krok 4: Ustaw B = A, aby dane użytkownika mogły być przechowywane w zakresie B.

Kod:

 Sub Sample4 () Dim A As Range Dim B As Range Set A = Application.InputBox („Select Data”, „Sample Macro”, Type: = 8) Set B = A End Sub 

Krok 5: Teraz usuniemy dane, które mają puste komórki z zakresu wybranego przez użytkownika.

Kod:

 Sub Sample4 () Dim A As Range Dim B As Range Set A = Application.InputBox („Select Data”, „Sample Macro”, Type: = 8) Set B = A A.SpecialCells (xlCellTypeBlanks) .EntireRow.Delete End Sub 

Krok 6: Teraz uruchom kod z podanego przycisku uruchamiania.

Krok 6: Pojawi się pole wprowadzania.

Krok 7: Wybierz zakres z A1: D8 w tym przykładzie. Naciśnij OK, aby zobaczyć wynik.

Dane, które miały puste komórki, zostały usunięte.

Rzeczy do zapamiętania

Jest kilka rzeczy, które musimy pamiętać o Usuń wiersz w Excel VBA:

  • Możemy usunąć wiersz na podstawie pojedynczej komórki.
  • Możemy usunąć wiele wierszy, podając zakres komórek.
  • Możemy również usuwać wiersze, pobierając dane wejściowe od użytkownika.

Polecane artykuły

To był przewodnik po VBA Delete Row. Tutaj omówiliśmy, jak usunąć wiersz w Excel VBA wraz z praktycznymi przykładami i szablonem Excel do pobrania. Możesz także przejrzeć nasze inne sugerowane artykuły -

  1. Jak korzystać z funkcji zamiany w VBA?
  2. Excel Usuń skrót wiersza
  3. Sprawa VBA | Sztuczki Excel
  4. Excel Wstaw skrót wiersza
  5. Jak zsumować wiele wierszy w programie Excel?

Kategoria: