IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Excel Discussion :

Somme toutes les 3 semaines


Sujet :

Excel

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Août 2006
    Messages
    300
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 300
    Points : 107
    Points
    107
    Par défaut Somme toutes les 3 semaines
    Bonjour

    Petit problème du jour.

    Je n'arrive pas à trouver la réflexion comment y arriver.

    En partant du Planning tri-mensuel j'aimerais calculer :

    La somme des heures de travail sur une année de la semaine 1 à 52 ou 53 selon les années

    de tous les lundi : dans notre cas trimensuel
    le 1er lundi,le 4ème, le 7ème Etc..... pareil pour tous les jours de la semaine
    le 2ème, le 5ème, le 7ème etc.....
    Le 3ème, le 6ème et le 9ème etc...
    par groupe de 3 semaines, et en changeant la valeur dans une cellule cela passerais de 3, à 4, 2 etc....

    [Nom : TriMensuel.png
Affichages : 129
Taille : 121,6 Ko

    Dans le tableau de droite je vérifie qu'il y est bien un lundi dans la semaine, et que celui çi ne soit pas férié (pareil pour les autres jours de la semaine)

    Faire la somme une fois toutes les trois lignes j'y arrive.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD(((MOD(LIGNE(DI4:DI56);DZ2)=0)*DI4:DI56))
    DZ me renvoie le nombre de ligne.
    (Merci Catapoulpe, pour la fonction MOD)

    Dans le tableau du milieu (c'est un récap de celui de droite, j'aimerais récupérer ou pas les infos dedans.)
    Tableau de Gauche mon Planning.

    Donc voilà ou j'en suis ce matin, depuis vendredi après midi et la réflexion ne vient toujours pas...

    Merci d'avance.

  2. #2
    Membre habitué
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2017
    Messages
    91
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2017
    Messages : 91
    Points : 140
    Points
    140
    Par défaut
    Bonjour,

    Voici un début de solution :
    Dans Feuil2 (ou autre), tu crées un tableau du style
    A B
    Lundi 1
    Mardi 2
    Mercredi 3
    ...
    Dimanche 7

    Dans ton onglet Planning,
    dans la cellule BD35, tu mets la valeur de décalage (3 pour toutes les 3 semaines, 4 pour toutes les 4 semaines, ...)
    dans la cellule BD37, tu mets la valeur de départ (1 pour commencer la 1ère semaine, 2 pour commencer la 2ème semaine, ...)

    dans la cellule DP4 , tu mets la formule suivante :
    =SI(ENT(DROITE(DH4;NBCAR(DH4)-1))<$BD$37;0;SI(ENT(DROITE(DH4;NBCAR(DH4)-1))=$BD$37;1;SI(MOD(ENT(DROITE(DH4;NBCAR(DH4)-1))-$BD$37;$BD$35)=0;1;0)))
    et tu scrolles jusqu'en bas de ton troisième tableau

    dans la cellule BE6 , tu mets la formule suivante :
    =INDEX($DI$4:$DO$67;DROITE(BE$5;NBCAR(BE$5)-1);RECHERCHEV($BD6;Feuil2!$A$1:$B$7;2;FAUX))*INDEX($BB:$BB;6+(DROITE(BE$5;NBCAR(BE$5)-1)-1)*9+RECHERCHEV($BD6;Feuil2!$A$1:$B$7;2;FAUX)-1;1)*INDEX($DP$4:$DP$67;DROITE(BE$5;NBCAR(BE$5)-1);1)
    tu copies/colles cette formule sur la plage BE6:BV12

    dans la cellule BE6 , tu mets la formule suivante :
    =INDEX($DI$4:$DO$67;DROITE(BE$14;NBCAR(BE$14)-1);RECHERCHEV($BD15;Feuil2!$A$1:$B$7;2;FAUX))*INDEX($BB:$BB;6+(DROITE(BE$14;NBCAR(BE$14)-1)-1)*9+RECHERCHEV($BD15;Feuil2!$A$1:$B$7;2;FAUX)-1;1)*INDEX($DP$4:$DP$67;DROITE(BE$5;NBCAR(BE$5)-1);1)
    tu copies/colles cette formule sur la plage BE15:BV21

    dans la cellule BE6 , tu mets la formule suivante :
    =INDEX($DI$4:$DO$67;DROITE(BE$23;NBCAR(BE$23)-1);RECHERCHEV($BD24;Feuil2!$A$1:$B$7;2;FAUX))*INDEX($BB:$BB;6+(DROITE(BE$23;NBCAR(BE$23)-1)-1)*9+RECHERCHEV($BD24;Feuil2!$A$1:$B$7;2;FAUX)-1;1)*INDEX($DP$4:$DP$67;DROITE(BE$5;NBCAR(BE$5)-1);1)
    tu copies/colles cette formule sur la plage BE24:BV30

    dans les cellules BW, tu fais la somme de BE à BV

    Si tu veux la somme à l'année : BD35 = BD37 = 1 => somme de tous les BW
    Si tu veux la somme de tous les lundi à l'année : BD35 = BD37 = 1 => somme de BW6, BW15 et BW24
    Si tu veux la somme des mardi toutes les 3 semaines, en commençant par la semaine 2 : BD35 = 3; BD37 = 2 => somme de BW7, BW16 et BW25

  3. #3
    Membre actif
    Femme Profil pro
    Technicienne
    Inscrit en
    Avril 2018
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicienne

    Informations forums :
    Inscription : Avril 2018
    Messages : 153
    Points : 264
    Points
    264
    Par défaut
    As-tu besoin du tableau de droite (le jaune) pour autre chose que ce calcul ?

    Comme l'a remarqué Bob78280, la question de la première semaine de l'année revient sur le tapis. Voir question DateDépart dans ton autre sujet. En tout cas, au vu du fichier que tu cherches à réaliser, il ne semble pas approprié de renseigner cette info pour chaque planning, chaque année.

    Est-ce que ce qui t'intéresse est le résultat suivant, par exemple présenté ainsi :
    Nom : Résultat.jpeg
Affichages : 167
Taille : 56,6 Ko

    Est-il envisageable de s'appuyer sur le tableau du milieu, par exemple en le présentant ainsi (je ne fais que le début, hein) :
    Nom : Résultat2.jpeg
Affichages : 161
Taille : 196,3 Ko

    Si oui, quelles sont les autres finalités possibles de ce tableau du milieu ?

    Il y a très probablement un moyen d'éviter le tableau intermédiaire (le jaune). Donc s'il n'a pas une solide raison d'exister, autant le savoir tout de suite. De plus, tel que tu nous présentes l'affaire, le tableau de droite est très redondant avec celui du milieu. La redondance est, je trouve, à réserver aux nécessités incontournables et aux situations où elle présente un avantage sûr et certain. Là, comme ça, l'un au moins de ces tableaux est de trop dans ton saloon !
    Chez moi : XL-MAC 2011, pas de VBA.
    C'est en bûchant qu'on devient bûcheron.
    C'est en mouchant qu'on devient moucheron.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Août 2006
    Messages
    300
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 300
    Points : 107
    Points
    107
    Par défaut
    Bonjour

    Merci pour le coup de main.

    Donc voici ce que j'ai ce matin :

    Nom : Tri Mensuel.png
Affichages : 180
Taille : 123,7 Ko

    J'ai gardé le tableau de droite, car il me permet de calculer pour, 2,3,4 semaines et plus. Comme cela je pouvoir adapter ma formule selon le cas.
    Il vérifie également si le jour n'est pas férié.
    Dans le cas d'un planning trimensuel j'ai comme formule

    Lundi Semaine 1:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD(((MOD(LIGNE($CX$4:$CX$56)-1;3)=0)*$CX$4:$CX$56))*BB6
    Lundi Semaine 2:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD(((MOD(LIGNE($CX$4:$CX$56)-1;3)=1)*$CX$4:$CX$56))*BB15
    Lundi Semaine 3:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =SOMMEPROD(((MOD(LIGNE($CX$4:$CX$56)-1;3)=2)*$CX$4:$CX$56))*BB24
    Comme cela il me suffit juste de changer ma valeur (3 ici) pour passer en 2 (Bimensuel); 4 (Mensuel)
    et le résultat de mon compteur MOD (=0; =1;=2; etc... ) pour chaque semaine.

    Cela me paraissait pas mal.

    Cordialement

  5. #5
    Membre actif
    Femme Profil pro
    Technicienne
    Inscrit en
    Avril 2018
    Messages
    153
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicienne

    Informations forums :
    Inscription : Avril 2018
    Messages : 153
    Points : 264
    Points
    264
    Par défaut
    Citation Envoyé par Didpa Voir le message
    J'ai gardé le tableau de droite, car il me permet de calculer pour, 2,3,4 semaines et plus. Comme cela je pouvoir adapter ma formule selon le cas.
    Il vérifie également si le jour n'est pas férié.
    Je n'ai pas précisé, mais évidemment, le "tableau du milieu" que je suggère se remplit pour tous les plannings quel que soit le nombre de semaines, et effectue la vérification des jours fériés.

    Citation Envoyé par Didpa Voir le message
    Comme cela il me suffit juste de changer ma valeur (3 ici) pour passer en 2 (Bimensuel); 4 (Mensuel)
    et le résultat de mon compteur MOD (=0; =1;=2; etc... ) pour chaque semaine.
    Du coup tu refais la manip chaque année pour chaque planning, y compris ceux créés par les chefs de service ??
    Bon. Je n'ai pas les cartes en main.

    Si finalement tu es intéressé par un comptage d'heures directement dans le tableau du milieu, fais-moi signe.
    Chez moi : XL-MAC 2011, pas de VBA.
    C'est en bûchant qu'on devient bûcheron.
    C'est en mouchant qu'on devient moucheron.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [2014] Cron table toutes les n semaines
    Par Galiolas dans le forum Développement
    Réponses: 3
    Dernier message: 07/03/2017, 16h00
  2. [8.4] Somme sur les dernières semaines
    Par la_fouine1806 dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 24/10/2016, 10h30
  3. Faire une somme toutes les n lignes
    Par collosus dans le forum R
    Réponses: 3
    Dernier message: 30/04/2013, 14h19
  4. Réponses: 9
    Dernier message: 18/02/2008, 11h25
  5. mise à jour des données toutes les semaines...
    Par Toff !!!!! dans le forum Access
    Réponses: 20
    Dernier message: 22/12/2005, 11h38

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo