Compter le Nombre de présences en fonction d'une date glissante

Inocybe

XLDnaute Nouveau
Bonjour à tous.
Secrétaire d'une association, je note la présence pour chaque membre à chaque réunion par la lettre "P" ; sinon "A" pour absent ou "E" pour excusé. J'en déduis pour chacun un total de "P" avec NB.SI et pourcentage annuel de présence.
Le règlement de notre association a changé. Il faut maintenant calculer, pour chaque membre, le pourcentage de présence sur une période de un an par date glissante.
Pour l'instant j'ai donc créé un tableau et à chaque réunion je supprime la colonne la plus ancienne de un an et je rajoute une colonne à la date de la nouvelle réunion.
Mais je vois sur le forum qu'il est possible de calculer le nombre de présence par date glissante.
Par exemple sur le fichier joint, la dernière réunion est du 23/03/2018. Pour chaque membre le nombre de présences devrait tenir compte des présences sur la période du 24/03/2017 au 23/03/2018, dans la colonne D.
Si ensuite j'ajoutai une présence à la réunion du 13/04/2018 (colonne actuellement vide) le calcul de présences devrait se faire sur la plage du 14/04/2017 au 13/04/2018, dans la colonne D.
J'ai essayé plusieurs formules :
=NB.SI(DECALER(H3;;EQUIV("P";H3:CJ3;0);;-8);"P")
ou
=NB.SI(DECALER(H6;0;0;1;C6-1);"P")
Mais cela ne fonctionne pas.

Si quelqu'un pouvait m'aider, cela m'éviterai un travail fastidieux.
En vous remerciant d'avance,
Cordialement
Inocybe
 
Dernière modification par un modérateur:

vgendron

XLDnaute Barbatruc
Hello et bienvenu(e) sur le forum
un essai en PJ

Cellule A1 = jour de la dernière réunion (tapée à la main..pour l'instant)
Cellule B1 = Calcul de la date 1 an avant + 1 jour

D3: formule avec sommeprod

en E3 F3 et G3, j'ai modifié la formule: ca t'évite d'avoir à taper "P" ou "A" ou "E"
 

Jocelyn

XLDnaute Barbatruc
re,
Bonjour chris :),

le différentiel viens du fait que je me suis basé sur la date maximale inférieur a la date du jour donc je débute le 9/06/2017 car la date maxi que je cherche est le 25/05/2018 a pour la date de départ en marche arriere il me semble qu'a partir du moment ou la date est passée la réunion a eut lieu même si l'on a aucune lettre a l'intérieur

Voila a inovybe de voire

Bises en attendant

Cordialement a tout le monde
 

Inocybe

XLDnaute Nouveau
Bonjour à tous.
Je ne m'attendais pas à des réponses aussi rapides. Même pas le temps de prendre une douche ;)
Bon après test, la réponse de vgendron fonctionne.
J'ai eu aussi un peu peur de la réponse de Jocelyn, pourtant elle marche aussi.

Une question annexe. J'ai laissé dans mon fichier exemple des autres feuilles de mon association avec des noms en clair.
Je ne voudrais pas que cela traine sur Internet.
Comment faire pour supprimer du forum cette discussion ?

Bonne journée à tous et merci.
Inocybe
 

chris

XLDnaute Barbatruc
Re

J'ai repris la logique de Jocelyn car il faut effectivement gérer le cas où on a moins de 12 mois dans le tableau (je n'ai pas chercher à remonter sur la préiode de l'autre onglet
=NB.SI(DECALER(H3;;EQUIV(MAX(MOIS.DECALER(DECALER($H$2;;NBVAL(H3:AZ3)-1);-MIN(NBVAL(H3:AZ3);12));H2);$H$2:$AJ$2;1);;30);"P")

La solution de Vgendron nécessite de saisir une date en A1... et ne gère pas cet aspect, ce qui explique la consision...
 
Dernière édition:

chris

XLDnaute Barbatruc
Re
Comment faire pour supprimer du forum cette discussion ?

Pas prévu car pas dans la logique du forum qui mutualise questions et réponses.
Reprend ton exemple en remplaçant les noms par des noms bidons et demande gentiment à Jocelyn et Vgendron de supprimer leur exemple en ne laissant que la formule ou de la refaire sur ton exemple modifié.

Il est bien spécifié dans la charte d'anonymiser avant de poster... tu le sauras pour la prochaine fois
 

Jocelyn

XLDnaute Barbatruc
re,

Bonjour David, et bravo pour ton fichier coupe du monde je profite de ce message pour le faire :)

bon je remets le fichier après avoir enlever les feuilles avec les véritables noms

Cordialement
 

Pièces jointes

  • Présences Inocybe sur un an date à date.xlsx
    13.2 KB · Affichages: 33

David Aubert

XLDnaute Barbatruc
Administrateur
Modérateur
Bonjour Jocelyn,
Merci :)
Comme tu as pu le voir finalement je n'ai pas apporté de modifications majeurs.
J'ai trop peur que ça engendre des effets de bord et un peu de complexité qui au final va nécessiter bcp de support utilisateur. :)
Je préfère dire le fichier marche comme ça, il est à prendre tel quel et on fera mieux pour la prochaine coupe d'Europe.
Sinon il y aura trop de décalages entre ceux qui ont commencé à utiliser le premier fichier et les nouveaux.
Vu le nb de questions qu'il y a déjà :)) je préfère gérer ainsi.
Bonne journée
David
 

vgendron

XLDnaute Barbatruc
héhé :)

pour la cellule A1: comme je le précisais.. elle doit etre remplie à la main.. pour l'instant

et maintenant. avec cette formule..MATRICIELLE
=INDEX(H2:AJ2;;MAX(SI(H3:AJ3<>"";COLONNE(H3:AJ3)))-7)

Matricielle=valider la formule en faisant : Ctrl+Maj+Entrée
 

Inocybe

XLDnaute Nouveau
Bonjour.

Merci à tous les contributeurs pour résoudre ce problème de "Compter le Nombre de présences en fonction d'une date glissante".
Cela fonctionne dans mon fichier définitif avec la solution proposée par Chris :
=NB.SI(DECALER(H3;;EQUIV(MAX(MOIS.DECALER(DECALER($H$2;;NBVAL(H3:AZ3)-1);-MIN(NBVAL(H3:AZ3);12));H2);$H$2:$AJ$2;1);;30);"P")

Cordialement
Inocybe
 

Discussions similaires

Statistiques des forums

Discussions
311 724
Messages
2 081 938
Membres
101 844
dernier inscrit
pktla