Microsoft 365 Afficher liste d'admissibles sous conditions [FILTRE]

3xceln4ute

XLDnaute Occasionnel
Bonjour,

J'ai une base de données qui contient la liste d'utilisateurs admissibles à certaines fonctions. La fonction FILTRE fonctionne adéquatement, sauf dans la situation où je veux intégrer une condition spécifique.
Cette condition exige de retourner le résultat ; afficher la liste des utilisateurs:
Si C2=TAUX ET C3="446", même s'i lest exigé de filtrer les résultats < à C5.

Le résultat devrai afficher 03 utilisateurs*.
1703397592079.png


*Les données ont été anonymisées.

La formule actuelle ressemble à ceci:
VB:
SIERREUR(
TRIER(
TRIER(
UNIQUE(
FILTRE(
CHOISIRCOLS(Tableau1;1;18;2;3;4;5;19;8;9;20;16;10;11;12);
((Tableau1[GEN->CODE STATUT RESSOURCE HUMAINE]=$C$2)*
(Tableau1[PRIVIL->ANCIEN CODE EMPLOI]=$C$3)*
(SI(ET($C$2="TAUX"; $C$3="446"); Tableau1[REF->EMPLOI : GROUPE DE TRAITEMENT]=$C$5); Tableau1[REF->EMPLOI : GROUPE DE TRAITEMENT]<$C$5)) *
(Tableau1[GEN->DATE ANCIENNETÉ GÉNÉRALE]<>"")*
(GAUCHE(Tableau1[VIGUEUR->UADM : NUMÉRO];2)="54")*
(Tableau1[PRIVIL->CODE ETAT DEMANDE]="ACTI")*
(Tableau1[PRIVIL->CODE TYPE DEMANDE]="ADMI")
);
" "
);;
);2;-1
);4;1
);
"Aucun résultat"
)

Voici le résultat affiché:
1703397834800.png


Je vous saurais gré de bien vouloir m'aiguiller vers une solution.

Merci.
 
Dernière édition:
Solution
Bonjour,

Essaie :

VB:
=SIERREUR(
TRIER(
TRIER(
UNIQUE(
FILTRE(
CHOISIRCOLS(Tableau1;1;18;2;3;4;5;19;8;9;20;16;10;11;12);
((Tableau1[GEN->CODE STATUT RESSOURCE HUMAINE]=$C$2)*
(Tableau1[PRIVIL->ANCIEN CODE EMPLOI]=$C$3)*
((Tableau1[REF->EMPLOI : GROUPE DE TRAITEMENT]<$C$5)+($C$2="taux")*($C$3=446)) *
(Tableau1[GEN->DATE ANCIENNETÉ GÉNÉRALE]<>"")*
(GAUCHE(Tableau1[VIGUEUR->UADM : NUMÉRO];2)="54")*
(Tableau1[PRIVIL->CODE ETAT DEMANDE]="ACTI")*
(Tableau1[PRIVIL->CODE TYPE DEMANDE]="ADMI")
);
" "
);;
);2;-1
);4;1
);
"Aucun résultat"
)

Daniel

danielco

XLDnaute Accro
Bonjour,

Essaie :

VB:
=SIERREUR(
TRIER(
TRIER(
UNIQUE(
FILTRE(
CHOISIRCOLS(Tableau1;1;18;2;3;4;5;19;8;9;20;16;10;11;12);
((Tableau1[GEN->CODE STATUT RESSOURCE HUMAINE]=$C$2)*
(Tableau1[PRIVIL->ANCIEN CODE EMPLOI]=$C$3)*
((Tableau1[REF->EMPLOI : GROUPE DE TRAITEMENT]<$C$5)+($C$2="taux")*($C$3=446)) *
(Tableau1[GEN->DATE ANCIENNETÉ GÉNÉRALE]<>"")*
(GAUCHE(Tableau1[VIGUEUR->UADM : NUMÉRO];2)="54")*
(Tableau1[PRIVIL->CODE ETAT DEMANDE]="ACTI")*
(Tableau1[PRIVIL->CODE TYPE DEMANDE]="ADMI")
);
" "
);;
);2;-1
);4;1
);
"Aucun résultat"
)

Daniel
 

Statistiques des forums

Discussions
312 207
Messages
2 086 230
Membres
103 160
dernier inscrit
Torto