VBA Elimina l'intera riga o colonna

Questo tutorial dimostrerà diversi modi per eliminare righe e colonne in Excel utilizzando VBA.

Elimina intera riga o colonna

Per eliminare un'intera riga in VBA utilizzare questa riga di codice:

1 Righe(1).Elimina

Nota che usiamo il Elimina metodo per eliminare una riga.

Invece di fare riferimento a Oggetto Righe, puoi fare riferimento alle righe in base alla loro Oggetto intervallo insieme a Intera riga:

1 Intervallo ("a1"). Intera riga. Elimina

Allo stesso modo per eliminare un'intera colonna, usa queste righe di codice:

1 Colonne(1).Elimina
1 Intervallo("a1").Colonna Intera.Elimina

Elimina più righe o colonne

Utilizzando la stessa logica, puoi anche eliminare più righe contemporaneamente:

1 Righe("1:3").Elimina

o colonne:

1 Colonne ("A: C"). Elimina

Notare che qui si fa riferimento ai numeri/lettere di riga e colonna specifici circondati da virgolette.

Naturalmente, puoi anche fare riferimento all'intera riga di un intervallo:

1 Intervallo ("a1: a10"). Intera riga. Elimina

Nota: gli esempi seguenti mostrano solo l'eliminazione delle righe, tuttavia, come puoi vedere sopra, la sintassi è praticamente identica all'eliminazione delle colonne.

Elimina righe vuote/vuote

Questo esempio eliminerà una riga se l'intera riga è vuota:

1234567891011 Sub DeleteRows_EntireRowBlank()Cella debole come intervalloPer ogni cella nell'intervallo ("b2: b20")Se Application.WorksheetFunction.CountA(cell.EntireRow) = 0 Alloracell.EntireRow.DeleteFinisci seCella successivaFine sottotitolo

Utilizza la funzione del foglio di lavoro di Excel: CONTA.VALORI.

Elimina riga se la cella è vuota

Questo cancellerà una riga se la colonna specifica in quella riga è vuota (in questo caso la colonna B):

1 Range("b3:b20").SpecialCells(xlCellTypeBlanks).EntireRow.Delete

Elimina riga in base al valore della cella

Questo eseguirà un ciclo attraverso un intervallo ed eliminerà le righe se un determinato valore di cella in quella riga dice "elimina".

1234567891011 Sub DeleteRowswithSpecificValue()Cella debole come intervalloPer ogni cella nell'intervallo ("b2: b20")Se cell.Value = "delete" Thencell.EntireRow.DeleteFinisci seCella successivaFine sottotitolo

Altri esempi di eliminazione di righe e colonne

Elimina righe duplicate

Questo codice eliminerà tutte le righe duplicate in un intervallo:

1 Intervallo ("b2: c100"). Rimuovi colonne duplicati: = 2

Nota che impostiamo Colonne:=2. Questo dice a VBA di controllare entrambe le prime due colonne di dati quando si considera se le righe sono duplicate. Viene trovato un duplicato solo quando entrambe le colonne hanno valori duplicati.

Se lo avessimo impostato su 1, solo la prima riga sarebbe stata controllata per i valori duplicati.

Elimina le righe della tabella

Questo codice eliminerà la seconda riga in una tabella facendo riferimento a ListObjects.

1 ThisWorkbook.Sheets("Sheet1").ListObjects("list1").ListRows(2).Delete

Elimina righe filtrate

Per eliminare solo le righe visibili dopo il filtraggio:

1 Range("b3:b20").SpecialCells(xlCellTypeVisible).EntireRow.Delete

Elimina righe nell'intervallo

Questo codice eliminerà tutte le righe nell'intervallo:

1 Intervallo ("a1: a10"). Intera riga. Elimina

Elimina le righe selezionate

Questo codice eliminerà tutte le righe selezionate:

1 Selezione.Intera riga.Elimina

Elimina l'ultima riga

Questo eliminerà l'ultima riga utilizzata nella colonna B:

1 Cells(Rows.Count, 2).End(xlUp).EntireRow.Delete

Modificando 2 in 1, puoi eliminare l'ultima riga utilizzata nella colonna A, ecc.:

1 Cells(Rows.Count, 1).End(xlUp).EntireRow.Delete

Elimina colonne per numero

Per eliminare una colonna in base al suo numero, usa un codice come questo:

1 Colonne (2).Elimina

Aiuterete lo sviluppo del sito, condividere la pagina con i tuoi amici

wave wave wave wave wave