Excel : comparaison de listes

Résolu
sourire_anne Messages postés 19 Date d'inscription   Statut Membre Dernière intervention   -  
danielc0 Messages postés 2053 Date d'inscription   Statut Membre Dernière intervention   -

Bonjour,

Je me retrouve avec une "équation" en 2 étapes.
J'ai 3 listes  :

  • QP (col A) la plus longue et complète
  • PRI, (col B) un premier tri : ils sont déjà dans QP mais avec un critère de plus (ex. âge)
  • Poten (col G) qui est une autre liste.

https://www.transfernow.net/dl/20250527LszkiK99

Questions :
- quelle formule utilisée dans Col C : Tous ceux qui sont QP mais pas PRI ?
- lorsque c'est effectif, le résultat est copié dans la colonne F puis on compare le résultat avec la liste Poten. Donc quelle formule utilisée dans col H : Tous ceux qui ne sont ni PRI ni Poten mais QPV ? soit en plus simple : H= F-G .

Dans ces 2 colonnes, je ne verrais que les noms des personnes absentes de B puis de G. Au besoin, il peut apparaitre dans les colonnes C et H : 0 pour dire que le nom est présent dans les 2 colonnes concernés.

La formule que j'ai : =SI(NB.SI(B:B;A3)=0;A3;"") est défaillante. D'où cette question.
J'espère avoir été claire.
Si besoin, n'hésitez pas à me demander une reformulation.

Je vous remercie pour vos conseils.

Bonne journée

Anne, utilisatrice de base Clin d’oeil
Windows / Chrome 136.0.0.0

A voir également:

3 réponses

Résumé de la discussion

Le besoin est d’extraire, à partir de QP (col A), les noms qui ne figurent pas dans PRI (col B) pour obtenir C, puis de retenir parmi ces noms ceux qui ne sont pas dans Poten (col G) afin d’obtenir H, avec H calculé à partir des éléments de F (la liste des QP sans PRI). Pour Excel 365, les solutions recommandées consistent à utiliser les formules FILTRE et NB.SI: en C5, =FILTRE(A5:A22;NB.SI(B5:B15;A5:A22)=0;""); et en H5, =FILTRE(F5:F22;((NB.SI(G5:G22;F5:F22)=0)*(F5:F22<>""));""), avec la possibilité d’utiliser C5# comme source pour éviter de recopier. Une alternative sans FILTRE existe, basée sur INDEX et AGREGAT pour agréger les valeurs manquantes. L’usage de plages non structurées facilite l’application des formules et évite les recopiages, ce qui permet d’obtenir les résultats directement.

Généré automatiquement par IA
sur la base des meilleures réponses
danielc0 Messages postés 2053 Date d'inscription   Statut Membre Dernière intervention   248
 

Pour conserver les tableaux structurés :

En C5, à recopier vers le bas :

=SIERREUR(INDEX(A:A;AGREGAT(15;6;LIGNE([QP])/ESTNA(EQUIV([QP];[PRI
(ils sont déjà de base QP)];0));LIGNE(A1)));"")

En H5, à recopier vers le bas :

=SIERREUR(INDEX(F:F;AGREGAT(15;6;LIGNE([Tous ceux qui sont
QP mais pas PRI
= COLONNE C])/ESTNA(EQUIV([Tous ceux qui sont
QP mais pas PRI
= COLONNE C];[Poten];0));LIGNE(F1)));"")

Note, il faut conserver les sauts de ligne de la dernière formule.

Daniel


1
sourire_anne Messages postés 19 Date d'inscription   Statut Membre Dernière intervention  
 

je vais essayer.

merci beaucoup

0
sourire_anne Messages postés 19 Date d'inscription   Statut Membre Dernière intervention  
 

C'es parafait

Merci beaucoup Daniel.

En repassant en plage plutôt qu'en tableau, cela fonctionne parfaitement.

Au TOP ! 

Bonne journée

Anne

0
danielc0 Messages postés 2053 Date d'inscription   Statut Membre Dernière intervention   248 > sourire_anne Messages postés 19 Date d'inscription   Statut Membre Dernière intervention  
 

Bonjour à tous,

Merci du retour. Bonne journée également.

Daniel

0
PapyLuc51 Messages postés 5093 Date d'inscription   Statut Membre Dernière intervention   1 493
 

Bonjour,

Je ne comprends absolument pas ta demande ; tu ne donnes aucun exemple de réponse souhaitée dans ton tableau

Pourquoi A3 dans la formule alors que les données sur le premier tableau commencent en ligne 5 ?

Cordialement

0
sourire_anne Messages postés 19 Date d'inscription   Statut Membre Dernière intervention  
 

bonjour,

Daniel a proposé 2 réponses.

Je vois avec celles-ci et reviens vers vous au besoin.

Merci d'avoir pris le temps de regarder ma demande.

0
danielc0 Messages postés 2053 Date d'inscription   Statut Membre Dernière intervention   248
 

Bonjour,

Solution avec Excel 365. Les colonnes contenant les formules ne doivent pas se trouver dans des tableaux structurés. J'ai convertis ces tableaux en plage. En C5 :

=FILTRE(A5:A22;NB.SI(B5:B15;A5:A22)=0;"")

En H5 :

=FILTRE(F5:F22;((NB.SI(G5:G22;F5:F22)=0)*(F5:F22<>""));"")

(formules uniques, ne pas recopier vers le bas).

Daniel


0
danielc0 Messages postés 2053 Date d'inscription   Statut Membre Dernière intervention   248
 

Maintenant, en H5, tu n'as pas besoin de recopier la colonne C en F, tu peux faire référence aux données de C avec C5# :

=FILTRE(C5#;((NB.SI(G5:G22;C5#)=0)*(C5#<>""));"")

Daniel

0
sourire_anne Messages postés 19 Date d'inscription   Statut Membre Dernière intervention  
 

Très bien Daniel.

Puis je utiliser A$5 pour l'étendre jusqu'en bas ?

0
danielc0 Messages postés 2053 Date d'inscription   Statut Membre Dernière intervention   248 > sourire_anne Messages postés 19 Date d'inscription   Statut Membre Dernière intervention  
 

De quelle formule parles-tu ?

Il ne faut pas recopier celle-ci :

=FILTRE(A5:A22;NB.SI(B5:B15;A5:A22)=0;"")

https://www.transfernow.net/dl/20250527RRmUlYbi

Daniel

0