VBA Elimina colonna

Normalmente nel foglio di lavoro Excel abbiamo due metodi diversi 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 Elimina e l'intera istruzione della 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

Questo eliminerà il numero di colonna 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 si desidera eliminare la colonna mese "Mar", selezionare 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, digita semplicemente "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 alfabeti, 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 

Esegui questo codice manualmente tramite l'opzione Esegui o premi il tasto F5, questo eliminerà le colonne "Feb", "Mar" e "Apr".

Esempio n. 2: eliminare le colonne con il nome del foglio di lavoro

Quanto sopra è una panoramica di come eliminare le colonne utilizzando il codice VBA. Tuttavia, questa non è la buona pratica per eliminare le colonne, senza fare riferimento al nome del foglio di lavoro è pericoloso eliminare ciecamente la colonna.

Se non hai menzionato il nome del foglio di lavoro, qualunque foglio sia attivo eliminerà le colonne di quel foglio.

Innanzitutto, dobbiamo selezionare il foglio di lavoro in base al suo nome.

Codice:

 Sub Delete_Example2 () Worksheets ("Sales Sheet") Selezionare End Sub 

Dopo aver selezionato il foglio dobbiamo selezionare le colonne. Possiamo anche selezionare le colonne usando anche l'oggetto VBA RANGE.

Codice:

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

Ciò eliminerà le colonne da B a D, del foglio di lavoro "Foglio di vendita". Per questo codice non importa quale sia attivo, tuttavia cancellerà solo le colonne menzionate di quel foglio.

Possiamo anche costruire il codice VBA nella stessa riga.

Codice:

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

Ciò elimina anche le colonne da "B a D" senza selezionare il foglio di lavoro "Foglio di vendita".

Esempio n. 3: eliminare le colonne vuote

Supponi di avere dati con colonne vuote alternative come quelle di seguito.

Quindi, elimina ogni colonna alternativa che possiamo usare sotto il codice.

Codice:

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

Esegui questo codice utilizzando il tasto F5 o manualmente, eliminerà tutte le colonne vuote alternative ei nostri dati saranno simili a questo.

Nota: funziona solo per colonne vuote alternative.

Esempio n. 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 sotto il codice lo farà.

Intervallo ("A1: F9") Selezionare

In questo intervallo di celle selezionato, devo selezionare le celle 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 stiamo eliminando 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 l'intera colonna di celle vuote.

Puoi scaricare questa colonna di eliminazione VBA di Excel qui - Modello di colonna di eliminazione VBA