Quando si lavora con una tabella di dati di grandi dimensioni, non è raro che la tabella contenga informazioni essenzialmente duplicate. Per elaborare le informazioni nella tabella, potresti voler rimuovere qualsiasi riga che consideri duplicata, riducendo così la quantità di informazioni che devi elaborare.

Ad esempio, supponiamo che la prima cella di ogni riga contenga un numero di parte. Cosa succede se si desidera eliminare tutte le righe che hanno numeri di parte duplicati nella prima cella? Se hai bisogno di questa soluzione, la seguente macro è per te:

Sub DelDupRows()

Dim rngSrc As Range     Dim NumRows As Integer     Dim ThisRow As Integer     Dim ThatRow As Integer     Dim ThisCol As Integer     Dim RightCol As Integer     Dim J As Integer, K As Integer

Application.ScreenUpdating = False     Set rngSrc = ActiveSheet.Range(ActiveWindow.Selection.Address)



NumRows = rngSrc.Rows.Count     ThisRow = rngSrc.Row     ThatRow = ThisRow + NumRows - 1     ThisCol = rngSrc.Column     RightCol = ThisCol + rngSrc.Columns.Count - 1

'Start wiping out duplicates     For J = ThisRow To (ThatRow - 1)

If Cells(J, ThisCol) > "" Then             For K = (J + 1) To ThatRow                 If Cells(J, ThisCol) = Cells(K, ThisCol) Then                     Cells(K, ThisCol) = ""

End If             Next K         End If     Next J

'Remove rows with empty key cells     For J = ThatRow To ThisRow Step -1         If Cells(J, ThisCol) = "" Then             Range(Cells(J, ThisCol), _               Cells(J, RightCol)).Delete xlShiftUp         End If     Next J     Application.ScreenUpdating = True End Sub

La macro funziona su una selezione effettuata prima di chiamarla. Pertanto, se è necessario rimuovere righe duplicate dall’intervallo D7: G85, selezionare semplicemente quell’intervallo e quindi eseguire la macro. Rimuove i duplicati dall’intervallo D7: D85, quindi rimuove tutte le righe in D7: G85 (quattro colonne per riga) per le quali la cella nella colonna D è vuota.

_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 (2108) si applica a Microsoft Excel 97, 2000, 2002 e 2003.