XL 2016 Calculer et afficher le nombre d'occurences de plusieurs feuilles dans une feuille recapitulative

dmayorie

XLDnaute Nouveau
Bonjour tout le monde, bonjour le forum,

J'espère que tout le monde va bien.

Je suis un novice dans Excel et je travaille dans un organisme de bienfaisance.

On vient de me donner la tache de gérer les inscriptions et j'ai créé un fichier qui contient pour le moment des feuilles intitulées "Tableau inscription" (plus tard j'ajouterai d'autres feuilles par mois) et une feuille récapitulative.

Vous trouverez un exemple de fichier excel ci-joint, "Gestion Inscription".

Ce que je sais faire est de calculer et afficher le nombre d'occurrences d'une colonne ou d'une ligne dans une même feuille avec la fonction NB.SI.

Ce que je ne sais pas faire est de calculer le nombre d'occurrences d'une colonne ou d'une ligne d'une feuille (ici Tableau Inscription Jul21) et de les afficher dans une autre feuille (ici, la feuille Récapitulative).

Ainsi je souhaiterais vous demander de l'aide à ce sujet.

Je préférerais ne pas travailler avec VBA ou avec des macros complexes. À moins que vous me suggériez de les utiliser. Si c'est le cas, pourriez-vous m'indiquer également comment les intégrer dans mon fichier excel.

Je vous remercie d'avance.

Cordialement.

Mayorie
 

Pièces jointes

  • gestion inscription.xlsx
    8.5 KB · Affichages: 14

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour Dmayorie, et bienvenu(e) sur XLD,
A mes yeux c'eût été plus simple en VBA, mais c'est faisable par formules, voir PJ.
Ma solution oblige à créer une ligne ( en ligne 2 dans l'ex ) qui donne le nom de l'onglet correspondant, de façon qu'à juil-21 corresponde l'onglet Tableau Inscription Jul21.
Ensuite toutes les formules sont du type :
VB:
=SIERREUR(NB.SI(INDIRECT("'"&C$2&"'!$E$7:$E$1000");$B4);"")
Indirect permet de reconstruire la plage désirée avec le bon nom de l'onglet.
Le Sierreur évite des #REF! lorsque l'onglet n'existe pas.
 

Pièces jointes

  • gestion inscription.xlsx
    15.6 KB · Affichages: 16

vgendron

XLDnaute Barbatruc
Hello
En PJ ton fichier avec deux formules

1) comme tu commences ton fichier, voici une recommandation:
chaque onglet doit s'appeler du "Mois-année" ==> plus simple pour reférencer l'onglet dans les formules

en C4: une première formule
VB:
=SIERREUR(SOMMEPROD((INDIRECT("'" &TEXTE(C$3;"mmm-aa") &"'!E7:E13")=$B4)*1);"")
ca se décompose comme ca:
Texte(C3;"mmm-aa") = NOM_Onglet : ca donne le mois-annee de la cellule C3 ==> qui correspond au nom de l'onglet (d'où la recommandation)

indirect(nom_Onglet &E7:E13) = ZonedeRecherche pour dire: va voir dans la colonne E7:E13 de la feuille "NomOnglet"

sommeprod('ZoneDeRecherche=B4)*1) ==> compte les cellules de la zonede recherche = à B4
==> ca te donne donc le résultat attendu
sierreur() ==> pour éviter d'avoir des #ref dans le cas ou les onglets n'existent pas

en C7: la seconde formule qui est identique; sauf que la colonne de recherche est F7:F13 (au lieu de E)
et ca doit etre = à "X"

Voila
tu n'as plus qu'à adapter pour les DA -TRAV et CH
 

Pièces jointes

  • gestion inscription.xlsx
    12.8 KB · Affichages: 11

vgendron

XLDnaute Barbatruc
et voici une autre solution par macro
une macro, c'est "juste" un petit programme qu'on écrit soi meme pour executer une ou plusieurs taches
le code est visible dans l'éditeur VBA (Alt+F11 pour l'ouvrir) ==> tu peux aller voir, j'ai mis des commentaires partout pour expliquer comment ca fonctionne

pour lancer la macro: suffit de cliquer sur le bouton "Recap" que j'ai mis en haut à gauche de la feuille Recapitulatif
 

Pièces jointes

  • gestion inscription.xlsm
    28 KB · Affichages: 8

dmayorie

XLDnaute Nouveau
Bonjour Dmayorie, et bienvenu(e) sur XLD,
A mes yeux c'eût été plus simple en VBA, mais c'est faisable par formules, voir PJ.
Ma solution oblige à créer une ligne ( en ligne 2 dans l'ex ) qui donne le nom de l'onglet correspondant, de façon qu'à juil-21 corresponde l'onglet Tableau Inscription Jul21.
Ensuite toutes les formules sont du type :
VB:
=SIERREUR(NB.SI(INDIRECT("'"&C$2&"'!$E$7:$E$1000");$B4);"")
Indirect permet de reconstruire la plage désirée avec le bon nom de l'onglet.
Le Sierreur évite des #REF! lorsque l'onglet n'existe pas.
Bonjour Sylvanu, Bonjour le forum,

Désolé du retard de réponse.

Merci beaucoup pour votre aide. Vous me dépannez énormément.

Ça a l'air de bien fonctionner.

Ceci dit je vous souhaite une très bonne journée !

Cordialement.

Mayorie
 

dmayorie

XLDnaute Nouveau
Hello
En PJ ton fichier avec deux formules

1) comme tu commences ton fichier, voici une recommandation:
chaque onglet doit s'appeler du "Mois-année" ==> plus simple pour reférencer l'onglet dans les formules

en C4: une première formule
VB:
=SIERREUR(SOMMEPROD((INDIRECT("'" &TEXTE(C$3;"mmm-aa") &"'!E7:E13")=$B4)*1);"")
ca se décompose comme ca:
Texte(C3;"mmm-aa") = NOM_Onglet : ca donne le mois-annee de la cellule C3 ==> qui correspond au nom de l'onglet (d'où la recommandation)

indirect(nom_Onglet &E7:E13) = ZonedeRecherche pour dire: va voir dans la colonne E7:E13 de la feuille "NomOnglet"

sommeprod('ZoneDeRecherche=B4)*1) ==> compte les cellules de la zonede recherche = à B4
==> ca te donne donc le résultat attendu
sierreur() ==> pour éviter d'avoir des #ref dans le cas ou les onglets n'existent pas

en C7: la seconde formule qui est identique; sauf que la colonne de recherche est F7:F13 (au lieu de E)
et ca doit etre = à "X"

Voila
tu n'as plus qu'à adapter pour les DA -TRAV et CH
Bonjour Vgendron, Bonjour le forum,

Désolé du retard de réponse.

Merci beaucoup pour votre aide. Vous me dépannez énormément.

Ça a l'air de bien fonctionner.

Ceci dit je vous souhaite une très bonne journée !

Cordialement.

Mayorie
 

dmayorie

XLDnaute Nouveau
et voici une autre solution par macro
une macro, c'est "juste" un petit programme qu'on écrit soi meme pour executer une ou plusieurs taches
le code est visible dans l'éditeur VBA (Alt+F11 pour l'ouvrir) ==> tu peux aller voir, j'ai mis des commentaires partout pour expliquer comment ca fonctionne

pour lancer la macro: suffit de cliquer sur le bouton "Recap" que j'ai mis en haut à gauche de la feuille Recapitulatif
Bonjour Vgendron, Bonjour le forum,

Désolé du retard de réponse.

Merci beaucoup pour votre aide. Mais je viens de tester la version avec macro. Malheureusement, Il ne se passe rien. Si j'ai bien compris, je remplis le tableau et ensuite je clique sur le bouton dans l'autre feuille.

Excel me demander de passer d'abord en mode "Editing". C'est fait, mais encore une fois rien ne se passe.

Pouvez-vous vérifier ce fichier. Je suis très curieux de voir comment cela fonctionne.

Merci !!

Ceci dit je vous souhaite une très bonne journée !

Cordialement.

Mayorie
 

Pièces jointes

  • gestion inscription.xlsm
    28 KB · Affichages: 5

vgendron

XLDnaute Barbatruc
Hello
S'il ne se passe rien, c'est peut etre que la mise à jour du tableau est déjà faite..
avec cette version, j'ai ajouté un message de fin

si tu veux voir ( pas grand chose à voir d'ailleurs) la différence entre avant et après bouton, efface le contenu du tableau, puis clique sur le bouton
dans la version ci jointe, le tableau est déjà vidé
 

Pièces jointes

  • gestion inscription (1).xlsm
    28.1 KB · Affichages: 10

dmayorie

XLDnaute Nouveau
Hello
S'il ne se passe rien, c'est peut etre que la mise à jour du tableau est déjà faite..
avec cette version, j'ai ajouté un message de fin

si tu veux voir ( pas grand chose à voir d'ailleurs) la différence entre avant et après bouton, efface le contenu du tableau, puis clique sur le bouton
dans la version ci jointe, le tableau est déjà vidé
Bonsoir Vgendron, bonsoir le forum,

Merci bcp pour le tip !!!

Bon weekend à toi et à tous les membres du forum.

Cordialement.
 

Discussions similaires

Statistiques des forums

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