Confronta due elenchi e visualizza gli elementi mancanti in un foglio di calcolo di Google


9

Sto cercando di trovare una soluzione per confrontare due elenchi separati (invitati - frequentati) e creare un terzo elenco (assente).

La funzione deve guardare il tasto in "Elenco assistito (D, E, F)" e confrontarlo con il tasto in "Elenco invitati (A, B, C)" e quindi visualizzare i valori mancanti in "Elenco assenti (G, H ,IO)".

Informazioni sui dati

  • La chiave è un "valore univoco" assegnato a ciascuna persona invitata.
  • I dati in "Elenco invitati (A, B, C)" sono costituiti da dati QUERY.
  • I dati in "Elenco assistito (D, E, F)" copiano / incollano i valori nelle celle.

Esempio di risultato desiderato

Invitded List (A,B,C)      Attended List (D,E,F)       Absent List (G,H,I)
 A      B       C            D      E       F            G      H        I
Key | Fname | Lname       | Key | Fname | Lname       | Key  | Fname | Lname
------------------------------------------------------------------- 
001   Tim     Smith         002  Mike     Jones         001    Tim     Smith
002   Mike    Jones         004  Jenny    Johnson       003    Amy     Wilson
003   Amy     Wilson
004   Jenny   Johnson

Qualsiasi assistenza è molto apprezzata.


Perché vlookup non fa il lavoro per te?
rahi,

@rahi Grazie per aver guardato questo. vlookup potrebbe funzionare, puoi per favore darmi qualche direzione?
Mr. B

Risposte:


3

Potresti provare qualcosa del genere:

=if(countif(D:D,A2)=0,A2,"")  

quindi copia su e giù per adattarla.

COUNTIF


Questo funziona come un risultato parziale poiché restituirà stringhe vuote che dovrebbero essere rimosse per ottenere il risultato finale desiderato.
Rubén,

6

Formula

=ArrayFormula(FILTER(A4:C7,ISERROR(match(A4:A7,D4:D5,0))))

Spiegazione

CORRISPONDENZA restituisce un errore se l'invito non appare nell'elenco degli invitati. ISERROR converte gli errori in VERO e i valori in FALSO Questo risultato viene utilizzato come criterio di filtro. Il risultato è l'elenco degli assenti:

|   001 |Tim       |Smith
|   003 |Amy       |Wilson

Basta aggiungere le intestazioni appropriate sopra la formula


0

VLOOKUP è un altro modo in cui puoi ottenere la risposta che desideri, ma non sono sicuro che la presenti nel modo desiderato.

Dall'articolo della guida di Fogli Google, VLOOKUP,

Cerca una chiave nella prima colonna di un intervallo e restituisce il valore di una cella specificata nella riga trovata.

Quindi, se aggiungi una Statuscolonna sul tuo elenco di partecipanti, puoi eseguire l' VLOOKUPelenco degli invitati, chiedendogli di restituire lo Attendedstato.

I tuoi dati potrebbero assomigliare a questo:

Prima di VLOOKUP

Nella cella D2, la tua VLOOKUPformula sarebbe simile a questa:

=VLOOKUP(A2, E:H, 4, FALSE)

  • A2 è la chiave
  • E:H è l'intervallo (l'elenco dei partecipanti)
  • 4si riferisce al numero di colonna nell'intervallo del valore che si desidera restituire
  • FALSE indica che stai cercando una corrispondenza esatta sulla chiave

Quando compili la formula dalla cella D2 a D5, finisci con i dati che assomigliano a questo:

Dopo VLOOKUP

Dove c'era una corrispondenza, il Statusvalore viene trasferito. Dove non c'è corrispondenza, vedi un #N/A.


Questo funziona come un risultato parziale poiché restituirà errori che potrebbero essere utilizzati per filtrare in seguito l'elenco degli invitati al fine di ottenere il risultato finale desiderato.
Rubén,

0

Una soluzione cellulare:

La combinazione della FILTERfunzione con la COUNTIFfunzione fornisce l'elenco desiderato:

=FILTER(A:C,COUNTIF(D:D,A:A)=0))

In questo esempio ho usato la chiave come campo di confronto confrontando la colonna A con le corrispondenze in D ma funziona anche con le altre colonne.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.