VBA Spalte löschen - Top 4 Methoden zum Löschen von Excel-Spalten mit VBA

Inhaltsverzeichnis

Normalerweise haben wir im Excel-Arbeitsblatt zwei verschiedene Methoden zum Löschen von Spalten, eine als Tastenkombination und eine andere mit der Rechtsklick- und Einfügemethode. In VBA müssen wir jedoch den Befehl delete und die gesamte Spaltenanweisung verwenden, um jede Spalte zusammen zu löschen Dies bedeutet, dass wir, wenn wir eine einzelne Spalte löschen müssen, eine einzelne Spaltenreferenz angeben, für die mehreren Spalten jedoch mehrere Spaltenreferenzen.

Excel VBA Spalte löschen

Wir führen viele Excel-Aktionen aus, z. B. Ausschneiden, Kopieren, Einfügen, Hinzufügen, Löschen, Einfügen und viele solche Dinge, die wir regelmäßig ausführen. Wir können alle diese Aktionen mithilfe der VBA-Codierung verwenden. Eines der wichtigen Konzepte, die wir in VBA lernen müssen, ist die Spalte „Löschen“. In diesem Artikel zeigen wir Ihnen, wie Sie diese Option zum Löschen von Spalten in VBA verwenden.

Was bewirkt das Löschen einer Spalte in Excel VBA?

Wie der Name schon sagt, wird die angegebene Spalte gelöscht. Um diese Aufgabe auszuführen, müssen wir zuerst identifizieren, welche Spalte wir löschen müssen. Die Auswahl der zu löschenden Spalten unterscheidet sich von Szenario zu Szenario. Daher werden wir einige der wichtigen und häufig auftretenden Szenarien in diesem Artikel behandeln.

Das Löschen der Spalten ist einfach. Zuerst müssen wir die COLUMNS-Eigenschaft verwenden, um die Spalte auszuwählen. Nachfolgend finden Sie die Syntax der Column Delete-Methode in VBA.

Spalten (Spaltenreferenz). Löschen

So können wir den Code folgendermaßen konstruieren:

Spalten (2). Löschen oder Spalten ("B"). Löschen

Dadurch wird Spalte Nummer 2, dh Spalte B, gelöscht.

Wenn wir mehrere Spalten löschen möchten, können wir keine Spalten eingeben. Wir müssen die Spalten durch Spaltenüberschriften, dh Alphabete, referenzieren.

Spalten ("A: D"). Löschen

Dadurch wird die Spalte von A nach D gelöscht, dh die ersten 4 Spalten.

Auf diese Weise können wir die Methode "Spalte löschen" in VBA verwenden, um die bestimmten Spalten zu löschen. Im folgenden Abschnitt werden wir weitere Beispiele sehen, um es besser zu verstehen. Weiter lesen.

Beispiele für die Excel VBA-Methode zum Löschen von Spalten

Unten finden Sie Beispiele zum Löschen von Spalten mit VBA.

Beispiel 1 - Verwenden der Löschmethode

Angenommen, Sie haben das Datenblatt, etwa das folgende.

Wenn Sie den Spaltenmonat "Mar" löschen möchten, wählen Sie zuerst die Spalteneigenschaft aus.

Code:

Sub Delete_Example1 () Spalten (End Sub

Erwähnen Sie die Spaltennummer oder das Alphabet. In diesem Fall ist es entweder 3 oder C.

Code:

Sub Delete_Example1 () Spalten (3). End Sub

Verwenden Sie die Delete-Methode.

Hinweis: In der IntelliSense-Liste wird die Löschmethode nicht ausgewählt. Geben Sie einfach "Löschen" ein.

Code:

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

Oder Sie können die Spaltenadresse wie folgt eingeben.

Code:

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

Führen Sie diesen Code mit der Taste F5 aus, oder Sie können ihn manuell ausführen und das Ergebnis anzeigen.

Beide Codes löschen die genannte Spalte auf dieselbe Weise.

Wenn wir mehrere Spalten löschen möchten, müssen wir sie im Alphabet erwähnen. Wir können hier keine Spaltennummern verwenden.

Wenn wir die Spalten 2 bis 4 löschen möchten, können wir den Code wie folgt übergeben.

Code:

Sub Delete_Example1 () Spalten ("C: D"). Delete End Sub

Run this code manually through the run option or press the F5 key. This will delete the columns “Feb,” “Mar,” and “Apr.”

Example #2 - Delete Columns with Worksheet Name

The above is an overview of how to delete columns using VBA code. However, that is not the good practice of deleting columns. Without referring the worksheet name, it is dangerous to blindly delete the column.

If you have not mentioned the worksheet name, then whichever sheet is active, it will delete columns of that sheet.

First, we need to select the worksheet by its name.

Code:

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

After selecting the sheet, we need to select the columns. We can also select the columns by using the VBA RANGE object as well.

Code:

Sub Delete_Example2() Worksheets("Sales Sheet").Select Range("B:D").Delete End Sub

This will delete the columns B to D of the worksheet “Sales Sheet.” For this code, it doesn’t matter which is active. Still, it will delete the mentioned columns of that sheet only.

We can also construct the VBA code in the single line itself.

Code:

Sub Delete_Example2() Worksheets("Sales Sheet").Range("B:D").Delete End Sub

This also deletes the columns “B to D” without selecting the worksheet “Sales Sheet.”

Example #3 - Delete Blank Columns

Assume you have data that has alternative blank columns like the below.

So, delete every alternative column we can use the below code.

Code:

Sub Delete_Example3() Dim k As Integer For k = 1 To 4 Columns(k + 1).Delete Next k End Sub

Run this code using the F5 key or manually. Then, it will delete all the alternative blank columns, and our data will look like this.

Hinweis: Dies funktioniert nur für alternative leere Spalten.

Beispiel 4 - Löschen von Spalten für leere Zellen

Schauen Sie sich nun dieses Beispiel an. Es gibt bestimmte Situationen, in denen wir die gesamte Spalte löschen müssen, wenn eine der leeren Zellen im Datenbereich gefunden wird. Betrachten Sie die folgenden Daten als Beispiel.

Alle gelb gefärbten Zellen sind leer. Hier muss ich also alle Spalten mit leeren Zellen löschen. Der folgende Code wird das tun.

Code:

Sub Delete_Example4 () Range ("A1: F9"). Wählen Sie Selection.SpecialCells (xlCellTypeBlanks). Wählen Sie Selection.EntireColumn.Delete End Sub

Lassen Sie mich diesen Code Zeile für Zeile für Sie erklären.

Unsere Daten sind von A1 bis F9 vorhanden, daher muss ich zuerst diesen Bereich auswählen, und der folgende Code wird dies tun.

Bereich ("A1: F9"). Wählen Sie

In diesem ausgewählten Zellbereich muss ich die leeren Zellen auswählen. Um eine leere Zelle auszuwählen, müssen wir eine spezielle Zelleigenschaft verwenden, und in dieser Eigenschaft haben wir den Zelltyp als leer verwendet.

Selection.SpecialCells (xlCellTypeBlanks) .Select

Als nächstes werden alle leeren Zellen ausgewählt, und in der Auswahl wird die gesamte Spalte der Auswahl gelöscht.

Selection.EntireColumn.Delete

So wird unser Endergebnis so aussehen.

Wo immer es die leere Zelle gefunden hat, hat es die gesamte Spalte dieser leeren Zellen gelöscht.

Sie können diese Excel VBA Delete Column hier herunterladen - VBA Delete Column Template

Interessante Beiträge...