Microsoft 365 liste déroulante avec case à cocher sans vba.

blancolie

XLDnaute Impliqué
Bonjour le forum,

existe t il un moyen de creer une liste déroulante avec des cases à cocher ? sans vba et macro. y a t il des tutos ? j'en trouve pas à ma convenance, ou quelqu'un peut me faire un modèle ? Dans cette liste déroulante, il y aura également des lignes.

cordialement
 
Solution
Bonsoir

en ce qui concerne LIGNE($5:$343, le tableau dans l'onglet donnée congé dépassera la ligne 343, il n'y a un moyen de rendre cela dynamique ? le tableau dans l'onglet donnée congé se nomme T_RecapCongés donc cela devrait pas rendre dynamique ligne(5 :343 ?

Normalement, LIGNE(T_RecapCongés) ou LIGNE(T_RecapCongés[Agent(s)]) devraient faire l'affaire.

@ plus

CISCO

XLDnaute Barbatruc
Bonjour

Essayes dans Recherche!F7 avec la formule matricielle (à valider avec Ctrl+maj+entrer)
Code:
SIERREUR(SI(B$36<>"";B$36;INDEX('Donné Congé'!C$1:C$250;MIN(SI(('Donné Congé'!D$5:D$250=INDEX(Paramètre!J$4:J$8;EQUIV(VRAI;B$39:B$53;0)/3))*(NB.SI(F$6:F6;'Donné Congé'!C$5:C$250)=0);LIGNE($5:$250);""))));"")

Est-ce que cela répond à ton besoin ?

@ plus
 
Dernière édition:

blancolie

XLDnaute Impliqué
c'est presque cela.
- Pour les équipes, exemple pour l'équipe Richard Mique pour le mois de janvier , j'ai Gilles Noury qui apparait alors qu'il n' a pas d'absences.

- Pour l'agent seul, quand on recopie la formule vers le bas, l'agent apparait plusieurs fois.

Chapeau en tout cas pour la formule, plus courte que la mienne.
faudra juste que je rende les plages dynamique et j'aimerais comprendre pourquoi dans cette portion du code :

Code:
EQUIV(VRAI;B$39:B$53;0)/3))

tu divises par 3 ?

cordialement
 

Pièces jointes

  • Congé.xlsx
    240.5 KB · Affichages: 16

CISCO

XLDnaute Barbatruc
Bonjour

c'est presque cela.
- Pour les équipes, exemple pour l'équipe Richard Mique pour le mois de janvier , j'ai Gilles Noury qui apparait alors qu'il n' a pas d'absences.

La formule dans mon dernier post liste tous les membres de l'équipe cochée, sans tenir compte des absences. Où est-ce qu'on trouve cette information ?

Code:
EQUIV(VRAI;B$39:B$53;0)/3))
tu divises par 3 ?

Dans la plage B$39:B$59, tu as le nom de l'équipe avec une case à cocher, puis une cellule vide, puis VRAI ou FAUX en fonction de l'état de la case à cocher, puis la série de 3 cellules recommence en dessous. Le EQUIV va renvoyer un nombre multiple de 3, mais, ce qui m'intéresse, ce n'est pas ce nombre, mais la position de ce VRAI : Est-ce qu'il correspond à la première équipe, à la seconde, à la 3ème... En divisant par 3, j'obtiens cette information.

Au passage, je remarque que j'ai oublié de vérifier une chose :
Dans cette formule, je fais avec un INDEX(Paramètre!J$4:J$8;EQUIV(VRAI;B$39:B$53;0)/3)), qui ne renverra le bon nom d'équipe que si les listes des équipes dans Paramètre!J$4:J$8 et B$39:B$53 sont données dans le même ordre. La 1ère de la plage Paramètre!J$4:J$8 doit aussi être la 1ère de la plage B$39:B$53, et ainsi de suite. Je te laisse vérifier :).

@ plus
 

blancolie

XLDnaute Impliqué
on trouve toute les réponses dans l'onglet donnée congé. dans ce tableau toute les absences sont classées par date; agent; équipe; le mois, le type de congé; et la durée.

pour les cases vides : tu as vu dans parametre, la ou j'ai mis un fond jaune ( case équipe), tu vois quand on coche l'équipe qu'on veut apparaitre, elle apparait dans ce fond jaune. peux t on pas orienter ta formule vers se subterfuge ?
 

CISCO

XLDnaute Barbatruc
Rebonjour

Chez moi, la formule dans Paramètre!P4 commence par SIERREUR(_xlfn.IFS(Recherche!B41=VRAI;" et Excel2010 ne connait pas xlfn.IFS... Je pense que c'est ton SI.CONDITION...

Essayes dans Recherche!F7 avec
Code:
SIERREUR(SI(B$36<>"";B$36;INDEX('Donné Congé'!C$1:C$250;MIN(SI(('Donné Congé'!D$5:D$250=Tableau11[Case Equipe])*(NB.SI(F$6:F6;'Donné Congé'!C$5:C$250)=0)*(NON(ESTNA(EQUIV('Donné Congé'!F$5:F$250;Paramètre!M$3:M$10;0))));LIGNE($5:$250);""))));"")

@ plus
 
Dernière édition:

blancolie

XLDnaute Impliqué
Re bonjour,

j'ai ré adapter la cellule P4 avec un si simple. je pense que ta version la connaisse.

Pour l'équipe cela marche mais au mois de mai Personne a pris des vacances, je devrais voir rien apparaitre.

Quand on teste seulement un agent, et qu'on recopie la formule vers le bas, il y autant d'agent que de cellule copié.
 

Pièces jointes

  • Congé.xlsx
    234.4 KB · Affichages: 2

blancolie

XLDnaute Impliqué
Code:
SIERREUR(SI(Recherche!B41=VRAI;"Hoche/notre-dame";SI(Recherche!B44=VRAI;"Richard Mique";SI(Recherche!B47=VRAI;"Bonne Aventure";SI(Recherche!B50=VRAI;"Blaise Pascal";SI(Recherche!B53=VRAI;"Richaud";"")))));"")


Désole, je l'avais teste en dessous de P4 et je ne l'ai pas collé dans P4. c'est fait ds le fichier ci-joint.
Dans la formule, faut rajouter le critère de la date
 

Discussions similaires

Réponses
8
Affichages
454

Statistiques des forums

Discussions
312 370
Messages
2 087 691
Membres
103 641
dernier inscrit
anouarkecita2