Come posso eliminare le righe duplicate in Microsoft Excel 2011?

3

Ogni 2 ° giovedì il nostro team deve produrre rapporti dai dati forniti in un foglio di calcolo Excel. In genere questi dati hanno circa 23.000 righe di dati. Il problema è che da giugno questi fogli di calcolo ora hanno righe duplicate, a causa di un problema nel data warehouse in cui sono prodotti.

Non capisco nulla di quel lato della cosa, ma quello che so è che dobbiamo trovare un modo semplice per cancellare ogni seconda riga. Al momento stiamo dividendo i dati in 3 fogli di calcolo e ho 3 membri dello staff che cancellano ogni 2a riga nel rispettivo foglio di calcolo. Quando hanno finito, li uniamo in un foglio di calcolo per produrre i nostri rapporti. Questo è un grande perdita di tempo (ci vogliono ancora ore), crea molto stress a causa del ritardo nel lavoro di altri, e rovina il morale della squadra.

Usiamo Excel 2011 su iMac con El Capitan, quindi stavo pensando che una macro potesse farlo, giusto? Qualcuno può confermare se è questo il caso e se sì come faremmo?

    
posta user250221 04.08.2017 - 08:56
fonte

1 risposta

5

Questa risposta presuppone:

  • hai una riga di intestazione e, a causa di ciò, la prima riga contenente i tuoi dati è la riga 2.

Soluzione

  1. Apri il foglio di calcolo di Excel nello stato originale (ad esempio, tutte le righe duplicate sono adiacenti l'una all'altra)
  2. Vai a Strumenti > Macro > Editor di Visual Basic
  3. Questo farà apparire una finestra Progetto con il nome del primo foglio evidenziato - Fai doppio clic sul nome del foglio
  4. Nella finestra di codice che appare, inserisci il codice seguente (dovresti riuscire a copiare e incollare)

    Sub DeleteEverySecondRow()
        For i = Cells(Rows.Count, "a").End(xlUp).Row To 2 Step -2
            Rows(i).Delete
        Next i
    End Sub
    
  5. Chiudi la finestra e torna al foglio di lavoro

  6. Ora vai su Strumenti > Macro > Macro ...
  7. Nella finestra Macro che appare, seleziona la macro EliminaEverySecondRow e fai clic sul pulsante Esegui
  8. Ora aspetta un po 'che la macro finisca (il tempo necessario dipende da quante righe hai - ma non dovrebbe richiedere più di qualche minuto al massimo)
  9. Al termine, ogni seconda riga verrà eliminata

Per qualsiasi problema, faccelo sapere.

Nota

Ho risposto a questa domanda sulla base del titolo originale e del requisito che hai specificato (cioè di eliminare ogni seconda riga). Tuttavia, tieni presente che se hai ordinato i dati in modo tale che le righe duplicate non sono più adiacenti l'una all'altra, allora questa macro non raggiungerà ciò di cui hai effettivamente bisogno.

    
risposta data 04.08.2017 - 09:07
fonte

Leggi altre domande sui tag