VBA Usuń kolumnę

Zwykle w arkuszu programu Excel mamy dwie różne metody usuwania kolumn, jedna to skrót klawiaturowy, a druga za pomocą metody kliknięcia prawym przyciskiem myszy i wstawiania, ale w VBA musimy użyć polecenia delete i całej instrukcji kolumny, aby usunąć dowolną kolumnę razem, sztuczka oznacza to, że jeśli musimy usunąć pojedynczą kolumnę, podajemy odwołanie do jednej kolumny, ale dla wielu kolumn podajemy odwołania do wielu kolumn.

Excel VBA Usuń kolumnę

W programie Excel wykonujemy wiele czynności, takich jak wycinanie, kopiowanie, wklejanie, dodawanie, usuwanie, wstawianie i wiele innych rzeczy, które robimy regularnie. Możemy użyć wszystkich tych działań za pomocą kodowania VBA. Jedną z ważnych koncepcji, których musimy się nauczyć, jest w języku VBA „kolumna usuwania”. W tym artykule pokażemy, jak korzystać z tej opcji Usuń kolumnę w VBA.

Co robi usuwanie kolumny w Excel VBA?

Jak nazwa mówi, usunie określoną kolumnę. Aby wykonać to zadanie, musimy najpierw zidentyfikować, którą kolumnę musimy usunąć. Wybór kolumn do usunięcia różni się w zależności od scenariusza, dlatego w tym artykule omówimy niektóre ważne i często spotykane scenariusze.

Usuwanie kolumn jest łatwe. Najpierw musimy użyć właściwości COLUMNS, aby wybrać kolumnę, więc poniżej znajduje się składnia metody Column Delete w języku VBA.

Kolumny (odniesienie do kolumny). Usuń

Możemy więc skonstruować kod w ten sposób:

Kolumny (2) .Usuń lub Kolumny („B”). Usuń

Spowoduje to usunięcie kolumny numer 2, tj. Kolumny B.

Jeśli chcemy usunąć wiele kolumn, nie możemy wprowadzić kolumn, musimy odwoływać się do kolumn za pomocą nagłówków kolumn, czyli alfabetów.

Kolumny („A: D”). Usuń

Spowoduje to usunięcie kolumny od A do D, czyli pierwszych 4 kolumn.

W ten sposób możemy użyć metody „Usuń kolumnę” w VBA, aby usunąć poszczególne kolumny. W poniższej sekcji zobaczymy więcej przykładów, aby lepiej to zrozumieć. Czytaj.

Przykłady metody Excel VBA Delete Column Method

Poniżej znajdują się przykłady usuwania kolumn za pomocą VBA.

Przykład 1 - użycie metody usuwania

Załóżmy, że masz arkusz danych podobny do poniższego.

Jeśli chcemy usunąć miesiąc kolumny „Mar”, najpierw wybierz właściwość kolumny.

Kod:

 Sub Delete_Example1 () Columns (End Sub 

Podaj numer kolumny lub alfabet. W tym przypadku jest to 3 lub C.

Kod:

Sub Delete_Example1 () Columns (3). Napis końcowy

Użyj metody Usuń.

Uwaga: nie otrzymasz listy IntelliSense, aby wybrać metodę Usuń, po prostu wpisz „Usuń”,

Kod:

 Sub Delete_Example1 () Columns (3) .Delete End Sub 

Lub możesz wpisać adres kolumny w ten sposób.

Kod:

 Sub Delete_Example1 () Columns ("C"). Delete End Sub 

Uruchom ten kod za pomocą klawisza F5 lub możesz uruchomić ręcznie i zobaczyć wynik.

Oba kody wykonają to samo zadanie, usuwając wspomnianą kolumnę.

Jeśli chcemy usunąć wiele kolumn, musimy wspomnieć o nich alfabetami, nie możemy tutaj użyć numerów kolumn.

Jeśli chcemy usunąć kolumny od 2 do 4, możemy przekazać kod jak poniżej.

Kod:

 Sub Delete_Example1 () Columns („C: D”). Delete End Sub 

Uruchom ten kod ręcznie za pomocą opcji uruchamiania lub naciśnij klawisz F5, spowoduje to usunięcie kolumn „Lut”, „Mar” i „Apr”.

Przykład # 2 - Usuń kolumny z nazwą arkusza

Powyżej znajduje się omówienie usuwania kolumn za pomocą kodu VBA. Nie jest to jednak dobra praktyka usuwania kolumn, bez odniesienia do nazwy arkusza niebezpieczne jest ślepe usunięcie kolumny.

Jeśli nie podałeś nazwy arkusza roboczego, którykolwiek arkusz jest aktywny, usunie kolumny tego arkusza.

Najpierw musimy wybrać arkusz roboczy według jego nazwy.

Kod:

 Sub Delete_Example2 () Worksheets ("Sales Sheet"). Wybierz End Sub 

Po wybraniu arkusza musimy zaznaczyć kolumny. Możemy również wybrać kolumny za pomocą obiektu VBA RANGE.

Kod:

 Sub Delete_Example2 () Worksheets („Sales Sheet”). Wybierz zakres („B: D”). Delete End Sub 

Spowoduje to usunięcie kolumn od B do D arkusza „Arkusz sprzedaży”. W przypadku tego kodu nie ma znaczenia, który jest aktywny, nadal usunie wspomniane kolumny tylko z tego arkusza.

Możemy również skonstruować kod VBA w samym pojedynczym wierszu.

Kod:

 Sub Delete_Example2 () Arkusze robocze („Arkusz sprzedaży”). Zakres („B: D”). Usuń koniec podrzędny 

Spowoduje to również usunięcie kolumn „B do D” bez wybierania arkusza roboczego „Arkusz sprzedaży”.

Przykład nr 3 - Usuń puste kolumny

Załóżmy, że masz dane, które mają alternatywne puste kolumny, takie jak poniżej.

Więc usuń każdą alternatywną kolumnę, której możemy użyć poniżej kodu.

Kod:

 Sub Delete_Example3 () Dim k As Integer Dla k = 1 do 4 kolumn (k + 1). Usuń następny k End Sub 

Uruchom ten kod za pomocą klawisza F5 lub ręcznie, a następnie usunie wszystkie alternatywne puste kolumny, a nasze dane będą wyglądać tak.

Uwaga: działa to tylko w przypadku alternatywnych pustych kolumn.

Przykład # 4 - Usuń puste kolumny komórek

Teraz spójrz na ten przykład. Istnieją pewne sytuacje, w których musimy usunąć całą kolumnę, jeśli w zakresie danych znajdzie się którakolwiek z pustych komórek. Jako przykład rozważ poniższe dane.

Wszystkie żółte komórki są puste. Więc tutaj moim wymaganiem jest usunięcie wszystkich pustych kolumn komórek. Poniższy kod zrobi to.

Kod:

 Sub Delete_Example4 () Range ("A1: F9"). Wybierz Selection.SpecialCells (xlCellTypeBlanks) .Wybierz Selection.EntireColumn.Delete End Sub 

Pozwól, że wyjaśnię ci ten kod wiersz po wierszu.

Nasze dane są tam od A1 do F9, więc najpierw muszę wybrać ten zakres, a poniższy kod to zrobi.

Zakres („A1: F9”). Wybierz

W tym wybranym zakresie komórek muszę zaznaczyć komórki, które są puste. Aby wybrać pustą komórkę, potrzebujemy specjalnej właściwości komórek i w tej właściwości użyliśmy typu komórki jako pustej.

Selection.SpecialCells (xlCellTypeBlanks)

Następnie wybierze wszystkie puste komórki, aw zaznaczeniu usuwamy całą kolumnę zaznaczenia.

Selection.EntireColumn.Delete

Więc nasz wynik końcowy będzie wyglądał tak.

Gdziekolwiek znalazł pustą komórkę, usunął te puste komórki całą kolumnę.

Możesz pobrać ten Excel VBA Usuń kolumnę tutaj - VBA Usuń szablon kolumny