Quando si importano dati da una fonte esterna, potrebbe essere necessario eliminare dati estranei da un foglio di lavoro. Ad esempio, potrebbe essere necessario rimuovere ogni seconda riga dai dati o ogni quinta riga.

Farlo a mano può essere noioso e soggetto a errori. Fortunatamente, puoi creare una macro per eliminare sia la noia che gli errori.

La seguente macro, DeleteRows, rimuoverà ogni X righe dal foglio di lavoro. Tutto quello che devi fare è selezionare le righe a cui vuoi che venga applicato.

La macro, come scritto, rimuoverà ogni seconda riga. Quindi, se si desidera eliminare la prima, la terza, la quinta e la settima riga che iniziano con la riga 10, selezionare le righe da 10 a 16 e quindi eseguire questa macro. Il risultato è che le righe 10 (la prima riga), 12 (la terza riga), 14 (la quinta riga) e 16 (la settima riga) vengono eliminate.

Sub DeleteRows()

Dim iStart As Integer     Dim iEnd As Integer     Dim iCount As Integer     Dim iStep As Integer     Dim J As Integer

iStep = 2    'Delete every 2nd row     Application.ScreenUpdating = False     iStart = 1     iCount = Selection.Rows.Count     'Find ending row to start deleting     For J = iStart To iCount Step iStep         iEnd = J     Next

Do While iEnd >= iStart         Selection.Rows(iEnd).Delete         iEnd = iEnd — iStep     Loop     Application.ScreenUpdating = True End Sub

Se vuoi eliminare qualche altro multiplo di righe, modifica semplicemente l’impostazione per la variabile iStep. Ad esempio, se vuoi cancellare ogni quinta riga, cambia iStep da 2 a 5. (Devi solo fare la singola modifica, nella dichiarazione iStep = 2.)

_Nota: _

Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (3592) si applica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 ed Excel in Office 365. Puoi trovare una versione di questo suggerimento per l’interfaccia del menu precedente di Excel qui: