VBA Kolom verwijderen - Top 4-methoden om Excel-kolommen te verwijderen met VBA

Normaal gesproken hebben we in het Excel-werkblad twee verschillende methoden om kolommen te verwijderen, de ene is de sneltoets en de andere door de rechtsklik- en invoermethode te gebruiken, maar in VBA moeten we de verwijderopdracht en de volledige kolominstructie gebruiken om elke kolom samen te verwijderen, de truc om dit is dat als we een enkele kolom moeten verwijderen, we een enkele kolomreferentie geven, maar voor de meerdere kolommen geven we meerdere kolomreferenties.

Excel VBA Kolom verwijderen

We voeren veel acties uit in Excel, zoals knippen, kopiëren, plakken, toevoegen, verwijderen, invoegen en veel van dergelijke dingen die we regelmatig doen. We kunnen al deze acties gebruiken met VBA-codering. Een van de belangrijke concepten die we moeten leren, is in VBA, de 'verwijderingskolom'. In dit artikel laten we u zien hoe u deze optie Kolom verwijderen in VBA gebruikt.

Wat doet kolom verwijderen in Excel VBA?

Zoals de naam al zegt, wordt de opgegeven kolom verwijderd. Om deze taak uit te voeren, moeten we eerst bepalen welke kolom we moeten verwijderen. De selectie van kolommen die moeten worden verwijderd, verschilt van scenario tot scenario, dus we zullen in dit artikel enkele van de belangrijke en vaak voorkomende scenario's behandelen.

Het verwijderen van de kolommen is eenvoudig. Eerst moeten we de COLUMNS-eigenschap gebruiken om de kolom te selecteren, dus hieronder staat de syntaxis van de Column Delete-methode in VBA.

Kolommen (kolomverwijzing) Verwijderen

We kunnen de code dus als volgt construeren:

Kolommen (2). Verwijderen of Kolommen ("B"). Verwijderen

Hierdoor wordt kolom nummer 2 verwijderd, dwz kolom B.

Als we meerdere kolommen willen verwijderen, kunnen we geen kolommen invoeren. We moeten naar de kolommen verwijzen door middel van kolomkoppen, dwz alfabetten.

Kolommen ("A: D"). Verwijderen

Hierdoor wordt de kolom van A tot D verwijderd, dwz de eerste 4 kolommen.

Op deze manier kunnen we de "Delete Column" -methode in VBA gebruiken om de specifieke kolommen te verwijderen. In het onderstaande gedeelte zullen we meer voorbeelden zien om het beter te begrijpen. Lees verder.

Voorbeelden van Excel VBA Kolom-methode verwijderen

Hieronder staan ​​de voorbeelden om kolommen te verwijderen met VBA.

Voorbeeld # 1 - De verwijdermethode gebruiken

Stel dat u het gegevensblad heeft, zoiets als het onderstaande.

Als we de kolommaand "Mar" willen verwijderen, selecteert u eerst de eigenschap Column.

Code:

Sub Delete_Example1 () Kolommen (End Sub

Noem het kolomnummer of alfabet. In dit geval is het 3 of C.

Code:

Sub Delete_Example1 () Kolommen (3). Einde Sub

Gebruik de Delete-methode.

Opmerking: u krijgt de IntelliSense-lijst niet om de verwijdermethode te selecteren. Typ gewoon 'Verwijderen',

Code:

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

Of u kunt het kolomadres op deze manier invoeren.

Code:

Sub Delete_Example1 () Kolommen ("C"). Verwijderen End Sub

Voer deze code uit met behulp van de F5-toets, of u kunt het handmatig uitvoeren en het resultaat zien.

Beide codes zullen hetzelfde werk doen als het verwijderen van de genoemde kolom.

Als we meerdere kolommen willen verwijderen, moeten we ze in het alfabet vermelden. We kunnen hier geen kolomnummers gebruiken.

Als we de kolommen 2 tot en met 4 willen verwijderen, kunnen we de code zoals hieronder doorgeven.

Code:

Sub Delete_Example1 () Kolommen ("C: D"). Verwijderen 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.

Opmerking: dit werkt alleen voor alternatieve lege kolommen.

Voorbeeld # 4 - Verwijder lege cellenkolommen

Kijk nu eens naar dit voorbeeld. Er zijn bepaalde situaties waarin we de hele kolom moeten verwijderen als een van de lege cellen in het gegevensbereik wordt gevonden. Beschouw de onderstaande gegevens als voorbeeld.

Alle geelgekleurde cellen zijn blanco. Dus hier is mijn vereiste om alle lege cellenkolommen te verwijderen. De onderstaande code zal dat doen.

Code:

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

Laat me deze code regel voor regel voor je uitleggen.

Onze gegevens zijn daar van A1 tot F9, dus eerst moet ik dat bereik selecteren en de onderstaande code zal dat doen.

Bereik ("A1: F9"). Selecteer

In dit geselecteerde celbereik moet ik de cellen selecteren die leeg zijn. Dus om een ​​lege cel te selecteren, hebben we een speciale celeigenschap nodig, en in die eigenschap hebben we het celtype als blanco gebruikt.

Selection.SpecialCells (xlCellTypeBlanks) .Select

Vervolgens worden alle lege cellen geselecteerd en in de selectie verwijderen we de volledige kolom van de selectie.

Selection.EntireColumn.Delete

Dus ons eindresultaat ziet er zo uit.

Overal waar het de lege cel heeft gevonden, heeft het die lege cellen de hele kolom verwijderd.

U kunt deze Excel VBA Kolom verwijderen hier downloaden - VBA Kolomsjabloon verwijderen

Interessante artikelen...