VBA Rimuovi duplicati

Excel ha una funzione che viene utilizzata per rimuovere i valori duplicati dalle celle, dalle righe o dalla tabella selezionate. Cosa succede se questo processo viene automatizzato in VBA? Sì, il processo di rimozione del duplicato può essere automatizzato in VBA in una forma di Macro. Nel processo di rimozione del duplicato, una volta completato, i valori univoci rimangono nell'elenco o nella tabella. Questo può avvenire con l'aiuto della funzione Rimuovi duplicati in VBA.

Come utilizzare Excel VBA Rimuovere i duplicati?

Impareremo come utilizzare un VBA Rimuovi duplicati con alcuni esempi in Excel.

Puoi scaricare questo VBA Rimuovi modello duplicati Excel qui - VBA Rimuovi modello duplicati Excel

Esempio n. 1 - VBA Rimuovi duplicati

Abbiamo un elenco di numeri che iniziano da 1 a 5 fino alla riga 20 solo nella colonna A. Come possiamo vedere nello screenshot qui sotto, tutti i numeri vengono ripetuti più volte.

Ora il nostro compito è rimuovere il duplicato dall'elenco tramite VBA. Per questo vai alla finestra VBA premendo il tasto F11.

In questo esempio, vedremo l'uso di base di come VBA Remove Duplicates può funzionare per i numeri. Per questo, abbiamo bisogno di un modulo.

Passaggio 1: aprire un nuovo modulo dal menu Inserisci che si trova nella scheda del menu Inserisci.

Passaggio 2: una volta aperto, scrivi la sottocategoria di VBA Rimuovi duplicato come mostrato di seguito.

Codice:

 Sub VBARemoveDuplicate1 () End Sub 

Passaggio 3: Nel processo di rimozione del duplicato, prima dobbiamo selezionare i dati. Per questo, in VBA eseguiremo la funzione di selezione fino a quando non scende per selezionare l'elenco completo dei dati come mostrato di seguito.

Codice:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown) .Seleziona End Sub 

Passaggio 4: Ora selezioneremo l'intervallo di celle o colonne selezionate A. Scenderà fino a quando non avremo i dati in una determinata colonna. Non solo fino alla riga 20.

Codice:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown) .Select Range (Selection, Selection.End (xlUp)). Seleziona End Sub 

Passaggio 5: ora seleziona l'intervallo di celle in un foglio attualmente aperto come mostrato di seguito. Ciò attiverà la colonna completa. Abbiamo selezionato la colonna A fino alla fine.

Codice:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown) .Select Range (Selection, Selection.End (xlUp)). Seleziona ActiveSheet.Range ("A: A"). End Sub 

Passaggio 6: ora utilizza la funzione RemoveDuplicate qui. Ciò attiverà il comando per rimuovere i valori duplicati dalla sequenza delle colonne 1. Se ci sono più colonne, il numero verrà aggiunto e separato da virgole tra parentesi come (1, 2, 3, …).

Codice:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown) .Select Range (Selection, Selection.End (xlUp)). Seleziona ActiveSheet.Range ("A: A"). RemoveDuplicates Columns: = 1, End Sub 

Passaggio 7: ora utilizzeremo il comando Intestazione che sposta il cursore sulla cella più in alto del foglio, che si trova principalmente nell'intestazione di qualsiasi tabella.

Codice:

 Sub VBARemoveDuplicate1 () Selection.End (xlDown) .Select Range (Selection, Selection.End (xlUp)). Seleziona ActiveSheet.Range ("A: A"). RemoveDuplicates Columns: = 1, Header: = xlYes End Sub 

Passaggio 8: compilare ora i passaggi del codice premendo il tasto F8. Una volta fatto, fai clic sul pulsante Riproduci per eseguire il codice come mostrato di seguito.

Come possiamo vedere, il numero duplicato viene eliminato dalla colonna A e rimane solo un conteggio univoco.

Esempio n. 2 - VBA Rimuovi duplicati

In questo esempio, vedremo come rimuovere i valori duplicati da più di una colonna. Per questo, considereremo lo stesso elenco duplicato usato nell'esempio-1. Ma in un nuovo modo, abbiamo aggiunto altre 2 colonne con gli stessi valori mostrati di seguito.

Questo è un altro metodo con un tipo leggermente diverso di struttura del codice.

Passaggio 1: apri un nuovo modulo in VBA e scrivi la sottocategoria in Rimuovi duplicato VBA. Se possibile, assegnagli un numero progressivo in modo che sia meglio scegliere il codice giusto da eseguire.

Codice:

 Sub VBARemoveDuplicate2 () End Sub 

Passaggio 2: Innanzitutto, seleziona il foglio completo in VBA come mostrato di seguito.

Codice:

 Sub VBARemoveDuplicate2 () Cells.Select End Sub 

Passaggio 3: ora seleziona il foglio attualmente aperto con il comando ActiveSheet e seleziona le colonne da A a C come mostrato di seguito.

Codice:

 Sub VBARemoveDuplicate2 () Cells.Select ActiveSheet.Range ("A: C"). End Sub 

Passo 4: Ora seleziona il comando RimuoviDuplicati e successivamente seleziona Colonna array da 1 a 3 come mostrato di seguito.

Codice:

 Sub VBARemoveDuplicate2 () Cells.Seleziona ActiveSheet.Range ("A: C"). RemoveDuplicates Columns: = Array (1, 2, 3), End Sub 

Passaggio 5: all'ultimo utilizzo, il comando Intestazione deve essere incluso nel processo di rimozione dei duplicati come xl Sì come mostrato di seguito.

Codice:

 Sub VBARemoveDuplicate2 () Cells.Seleziona ActiveSheet.Range ("A: C"). RemoveDuplicates Columns: = Array (1, 2, 3), Header: = xlYes End Sub 

Passaggio 6: compilare ora il codice completo ed eseguirlo. Come possiamo vedere di seguito, viene selezionato il foglio completo ma i valori duplicati vengono rimossi dalle colonne A, B e C, mantenendo solo un conteggio univoco.

Esempio n. 3 - VBA Rimuovi duplicati

Questo è un altro metodo per rimuovere i duplicati che è il modo più semplice per rimuovere i duplicati in VBA. Per questo, useremo i dati che abbiamo visto nell'esempio-1 e mostrato anche di seguito.

Passo 1: Ora vai su VBA e scrivi di nuovo la sottocategoria di VBA Rimuovi duplicati. Abbiamo dato la sequenza a ciascun codice che abbiamo mostrato per avere una traccia corretta.

Codice:

 Sub VBARemoveDuplicate3 () End Sub 

Passaggio 2: Questo è un modello abbastanza simile che abbiamo visto nell'esempio 2, ma un modo rapido per scrivere un codice per rimuovere i duplicati. Per questo prima iniziare direttamente a selezionare l'intervallo di colonne come mostrato di seguito. Abbiamo mantenuto il limite fino alla 100a cella della colonna A a partire da 1 seguito da un punto (.)

Codice:

 Intervallo VBARemoveDuplicate3 () secondario ("A1: A100"). End Sub 

Passo 3: Ora seleziona il comando RimuoviDuplicati come mostrato di seguito.

Codice:

 Intervallo VBARemoveDuplicate3 () secondario ("A1: A100"). RemoveDuplicates End Sub 

Passo 4: Ora seleziona le colonne A come con il comando Colonne con la sequenza di 1. E successivamente includi l' intestazione delle colonne selezionate e mostrate di seguito.

Codice:

 Intervallo VBARemoveDuplicate3 () secondario ("A1: A100"). RemoveDuplicates Columns: = 1, Header: = xlYes End Sub 

Passaggio 5: ora compilalo premendo il tasto F8 ed esegui. Vedremo che il nostro codice ha rimosso i numeri duplicati dalle colonne A e sono rispettati solo i valori univoci.

Pro di VBA Rimuovere i duplicati

  • È utile per rimuovere rapidamente i duplicati in qualsiasi intervallo di celle.
  • È facile da implementare.
  • Quando si lavora su enormi set di dati, in cui la rimozione del duplicato diventa difficile manualmente e blocca i file e VBA Remove Duplicates funziona in un secondo per darci valori univoci.

Contro di VBA Rimuovere i duplicati

  • Non è utile utilizzare VBA Rimuovi duplicati per dati molto piccoli, poiché potrebbe essere facilmente eseguito dalla funzione Rimuovi duplicati disponibile nella barra dei menu Dati.

Cose da ricordare

  • L'intervallo può essere selezionato in due modi. Una volta selezionato, il limite di celle come mostrato nell'esempio-1 e l'altro sta selezionando la colonna completa fino alla fine, come mostrato nell'esempio-1.
  • Assicurati che il file sia salvato in Excel abilitato per le macro che ci consentirà di utilizzare il codice scritto più volte senza perderlo.
  • È possibile mantenere il valore della funzione Intestazione come , poiché conterà anche l'intestazione durante la rimozione dei valori duplicati. Se non esiste un valore duplicato con il nome del nome Intestazioni, tenerlo come No non danneggerà nulla.

Articoli consigliati

Questa è stata una guida a VBA Rimuovere i duplicati. Qui abbiamo discusso su come utilizzare Excel VBA Rimuovi duplicati insieme a esempi pratici e template Excel scaricabili. Puoi anche consultare i nostri altri articoli suggeriti:

  1. Lavorare con VBA Active Cell
  2. Eliminazione di una riga in VBA
  3. Come utilizzare Excel VBA Transpose?
  4. Come risolvere l'errore 1004 utilizzando VBA

Categoria: