VBA Elimina colonna - I 4 migliori metodi per eliminare le colonne di Excel utilizzando VBA

Normalmente nel foglio di lavoro Excel abbiamo due diversi metodi per eliminare le colonne, uno è la scorciatoia da tastiera e un altro usando il tasto destro del mouse e il metodo di inserimento, ma in VBA dobbiamo usare il comando di cancellazione e l'intera istruzione di colonna per eliminare qualsiasi colonna insieme, il trucco per questo è che se abbiamo bisogno di eliminare una singola colonna diamo un singolo riferimento di colonna ma per le colonne multiple diamo più riferimenti di colonna.

Colonna Elimina VBA di Excel

Eseguiamo molte azioni in Excel come tagliare, copiare, incollare, aggiungere, eliminare, inserire e molte altre cose del genere che facciamo regolarmente. Possiamo usare tutte queste azioni usando la codifica VBA. Uno dei concetti importanti che dobbiamo imparare è in VBA è la "colonna di eliminazione". In questo articolo, ti mostreremo come utilizzare questa opzione Elimina colonna in VBA.

Cosa fa Elimina colonna in Excel VBA?

Come dice il nome, eliminerà la colonna specificata. Per eseguire questa operazione, dobbiamo prima identificare quale colonna dobbiamo eliminare. La selezione delle colonne da eliminare è diversa da uno scenario all'altro, quindi tratteremo alcuni degli scenari importanti e spesso affrontati in questo articolo.

Eliminare le colonne è facile. Innanzitutto, dobbiamo utilizzare la proprietà COLUMNS per selezionare la colonna, quindi di seguito è riportata la sintassi del metodo Column Delete in VBA.

Colonne (riferimento colonna) Elimina

Quindi possiamo costruire il codice in questo modo:

Colonne (2). Elimina o Colonne ("B"). Elimina

Questa operazione eliminerà la colonna numero 2, ovvero la colonna B.

Se vogliamo eliminare più colonne, non possiamo inserire colonne. Dobbiamo fare riferimento alle colonne per intestazioni di colonna, cioè alfabeti.

Colonne ("A: D"). Elimina

Questo cancellerà la colonna da A a D, cioè le prime 4 colonne.

In questo modo, possiamo utilizzare il metodo "Elimina colonna" in VBA per eliminare le colonne particolari. Nella sezione sottostante, vedremo più esempi per capirlo meglio. Continuare a leggere.

Esempi di metodo di eliminazione della colonna VBA di Excel

Di seguito sono riportati gli esempi per eliminare le colonne utilizzando VBA.

Esempio n. 1: utilizzo del metodo di eliminazione

Supponi di avere la scheda tecnica, qualcosa di simile al seguente.

Se vogliamo eliminare la colonna mese "Mar", seleziona prima la proprietà delle colonne.

Codice:

Sub Delete_Example1 () Columns (End Sub

Indica il numero o l'alfabeto della colonna. In questo caso, è 3 o C.

Codice:

Sub Delete_Example1 () Columns (3). End Sub

Usa il metodo Elimina.

Nota: non otterrai l'elenco IntelliSense per selezionare il metodo Elimina. Basta digitare "Elimina"

Codice:

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

Oppure puoi inserire l'indirizzo della colonna in questo modo.

Codice:

Sub Delete_Example1 () Colonne ("C"). Elimina End Sub

Esegui questo codice utilizzando il tasto F5 oppure puoi eseguire manualmente e vedere il risultato.

Entrambi i codici faranno lo stesso lavoro di eliminare la colonna menzionata.

Se vogliamo eliminare più colonne, dobbiamo menzionarle in alfabeto. Non possiamo usare i numeri di colonna qui.

Se vogliamo eliminare le colonne da 2 a 4, possiamo passare il codice come di seguito.

Codice:

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

Nota: funziona solo per colonne vuote alternative.

Esempio # 4: eliminare le colonne delle celle vuote

Ora guarda questo esempio. Ci sono alcune situazioni in cui è necessario eliminare l'intera colonna se una delle celle vuote si trova nell'intervallo di dati. Considera i dati seguenti come esempio.

Tutte le celle di colore giallo sono vuote. Quindi qui, il mio requisito è eliminare tutte le colonne delle celle vuote. Il codice seguente lo farà.

Codice:

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

Lascia che ti spieghi questo codice riga per riga.

I nostri dati sono lì da A1 a F9, quindi prima devo selezionare quell'intervallo e il codice seguente lo farà.

Intervallo ("A1: F9") Selezionare

In questo intervallo di celle selezionato, devo selezionare le celle che sono vuote. Quindi, per selezionare una cella vuota, abbiamo bisogno di una proprietà speciale delle celle e in quella proprietà, abbiamo usato il tipo di cella come vuoto.

Selection.SpecialCells (xlCellTypeBlanks) .Select

Successivamente, selezionerà tutte le celle vuote e nella selezione elimineremo l'intera colonna della selezione.

Selection.EntireColumn.Delete

Quindi il nostro risultato finale sarà simile a questo.

Ovunque abbia trovato la cella vuota, ha cancellato quelle celle vuote l'intera colonna.

Puoi scaricare questa colonna di eliminazione VBA di Excel qui: modello di eliminazione della colonna VBA

Articoli interessanti...