2012-09-12 12 views
31
  1. Diciamo che ho un foglio - numero uno - con oltre 5000 righe (per esempio, le colonne 'A' - 'H 'ciascuno).
  2. In un altro foglio - numero due - Ho un "lista da rimuovere-" - un'unica colonna 'Un' con 400 valori, ogni stringa alfanumerica contenente (esempio: xxx1234).
  3. devo rimuovere ogni singola riga foglio numero uno, se colonna 'E' contiene qualsiasi valore da "a-remove-list" (dalla colonna 'Un' del foglio numero due).
  4. Con rimozione l'intera riga, voglio dire cancellare la riga e spostarlo verso l'alto (non lasciare il blankspace)

Come posso ottenere che? Qualsiasi aiuto sarebbe molto apprezzato.excel cancellare riga se colonna contiene il valore da to-remove-list

+4

puoi aggiungere una colonna al foglio uno che fa un VLookup nel secondo foglio. Contrassegnando tutti i record con VLookup, è possibile ordinare le righe nel foglio uno e quindi evidenziare/eliminare le righe contrassegnate. –

+0

fantastico James L. grazie mille per questa idea! – ndo

+0

Creerò l'idea in una risposta con un semplice esempio. –

risposta

56

foglio Dato 2:

ColumnA 
------- 
apple 
orange 

Puoi bandiera le righe foglio 1 in cui esiste un valore in foglio 2:

ColumnA ColumnB 
------- -------------- 
pear  =IF(ISERROR(VLOOKUP(A1,Sheet2!A:A,1,FALSE)),"Keep","Delete") 
apple =IF(ISERROR(VLOOKUP(A2,Sheet2!A:A,1,FALSE)),"Keep","Delete") 
cherry =IF(ISERROR(VLOOKUP(A3,Sheet2!A:A,1,FALSE)),"Keep","Delete") 
orange =IF(ISERROR(VLOOKUP(A4,Sheet2!A:A,1,FALSE)),"Keep","Delete") 
plum  =IF(ISERROR(VLOOKUP(A5,Sheet2!A:A,1,FALSE)),"Keep","Delete") 

I dati risultanti si presenta così:

ColumnA ColumnB 
------- -------------- 
pear  Keep 
apple Delete 
cherry Keep 
orange Delete 
plum  Keep 

È quindi possibile filtrare o ordinare facilmente il foglio 1 ed eliminare le righe contrassegnate da "Elimina".

+0

Fantastico, grazie! – ndo

+7

Non sono sicuro se questo aiuterà qualcun altro, ma ho dovuto scriverlo come '= IF (ISERROR (VLOOKUP (A1, Foglio2! $ A $ 3: $ A $ 7,1, FALSE))," Mantieni "," Elimina ") ' – James

+0

@James Il segno' $' rende l'area selezionata fissa in modo che non "si sposti" quando si trascina verso il basso o si copia-incolla la cella. – totymedli

8

ho trovato un metodo più affidabile (almeno su Excel 2016 per Mac) è:

Assumendo che il lungo elenco è nella colonna A, e l'elenco delle cose da rimuovere da questo è nella colonna B , quindi incollare questo in tutte le righe della colonna C:

= SE (COUNTIF ($ B $ 2: $ B $ 99999 A2)> 0, "Elimina", "Keep")

poi basta ordinare il elenca per colonna C per trovare ciò che devi eliminare.

3

Ecco come procedere se si utilizza un numero elevato di valori "per rimuovere" che richiederebbero molto tempo per rimuovere manualmente.

  • -Mettere Lista originale nella colonna A -Mettere rimuovere nella colonna B -Selezionare entrambe le colonne, poi "Formattazione condizionale"
    -Selezionare "cellule Regole Hightlight" -> "valori duplicati"
    duplicati -Le dovrebbero essere hightlighted in entrambe le colonne
    -Poi selezionare la colonna a e poi "Sort & Filter" ---> "Ordinamento personalizzato"
    -Nella finestra di dialogo che appare, selezionare l'opzione di mezzo "Sort On" e seleziona "Colore cella"
    -Poi seleziona l'opzione successiva "S ort Ordine "e scegliere" Nessun colore cella "" Sul fondo "
    -Tutte le celle evidenziate dovrebbero essere in cima alla lista. -Seleziona tutte le celle evidenziate scorrendo verso il basso l'elenco, quindi fai clic su Elimina.
+0

Wow funziona come per magia con un filtro in posizione. Grazie. – danny117

Problemi correlati