web-dev-qa-db-fra.com

Comparez deux listes et affichez les éléments manquants dans une feuille de calcul Google.

J'essaie de trouver une solution pour comparer deux listes distinctes (invité - en présence) et créer une 3ème liste (absente).

La fonction doit examiner la clé dans "Liste des participants (D, E, F)" et la comparer à la clé dans "Liste des invités (A, B, C)", puis afficher les valeurs manquantes dans "Liste des absents (G, H)". ,JE)".

À propos des données

  • La clé est une "valeur unique" attribuée à chaque personne invitée.
  • Les données de la "Liste des invités (A, B, C)" comprennent les données QUERY.
  • Les données dans "Liste des personnes à assister (D, E, F)" sont copiées/collées dans les cellules.

Exemple de résultat souhaité

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

Toute aide est grandement appréciée.

8
Mr. B

Vous pouvez essayer quelque chose comme ça:

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

puis copier en travers et en bas pour convenir.

COUNTIF

2
pnuts

Formule

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

Explication

MATCH renvoie une erreur si l'invité n'apparaît pas dans la liste des participants. ISERROR convertit les erreurs en TRUE et les valeurs en FALSE. Ce résultat est utilisé comme critère de filtrage. Le résultat est la liste des absents:

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

Ajoutez simplement les en-têtes appropriés au-dessus de la formule

4
Rubén

VLOOKUP est un autre moyen d'obtenir la réponse que vous souhaitez, mais je ne suis pas sûr que cela soit présenté comme vous le souhaitez.

À partir de l'article d'aide de Google Sheets, VLOOKUP,

Recherche la clé dans la première colonne d'une plage et renvoie la valeur d'une cellule spécifiée dans la ligne trouvée.

Ainsi, si vous ajoutez une colonne Status à votre liste de participants, vous pouvez exécuter la commande VLOOKUP sur la liste des invités en lui demandant de renvoyer le statut Attended.

Vos données pourraient ressembler à ceci:

Before VLOOKUP

Dans la cellule D2, votre formule VLOOKUP ressemblerait à ceci:

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

  • A2 est la clé
  • E:H est la plage (la liste des participants)
  • 4 fait référence au numéro de colonne compris dans l'intervalle de la valeur à renvoyer
  • FALSE indique que vous recherchez une correspondance exacte sur la touche

Lorsque vous remplissez la formule de la cellule D2 à D5, vous obtenez des données ressemblant à ceci:

After VLOOKUP

Là où il y avait une correspondance, la valeur Status est interceptée. S'il n'y a pas de correspondance, vous voyez un #N/A.

0
rahi