Nombre de dimanches

Résolu
Bonjour,

je recherche une fonction qui me calcule le nombres de dimanche travaillés
Je m'explique en colonne A jai ma date en B C D E G jai mes équipes 1 à 5 qui sont soi de matin soit d après midi soit de nuit soit de repos

Je voudrai calculer le nombre de dimanche travaillé par chaque équipes

Merci d'avance

20 réponses

  1. Re,

    avant de crier au loup, si tu regardais les réponses qui te sont faites et y répondre
    1
    1. Re,

      je crois que tu en demande un peu trop, et dans tes données il manque des éléments de calcul.
      Si en colonne A tu as une date, il est possible de savoir si c'est un dimanche sans problème, mais après comment est structuré ton fichier en B C D E etc ... qui a t il dans ces colonnes des dates des symboles no sabe et Excel n'est pas devin pas plus que moi d'ailleurs
      1
      1. Bonjour,

        pour avoir le nombre de dimanche entre deux dates d'après tes explications il manque une date. Si en A tu à une date de départ ou est la date de fin, en supposant qu'en A1 tu as la date de début et en A2 la date de fin cette formule te donnera le nombre de Dimanche à ne pas confondre avec le Wee-end

        =SOMMEPROD((JOURSEM(LIGNE(INDIRECT(A1&":"&A2)))=1) *1)
        0
        1. Peut tu m'expliquer la formule ?
          0
          1. Re,

            enfin un retour constructif,

            INDIRECT(A1&":"&A2) va prendre en compte les valeurs qui se trouve en A1:A2

            LIGNE(INDIRECT(A1&":"&A2)) va établir une liste de date numérique entre les deux dates qui se trouvent en A1 et A2, 41640 correspond au 1 janvier 2014, 41641 au 2 janvier 2014 etc ...

            {41640;41641;41642;41643;41644;41645;41646;41647;41648;41649;41650;41651;41652;41653;41654;41655;41656;41657;41658;41659;41660;41661;41662;41663;41664;41665;41666;41667;41668;41669;41670}

            (JOURSEM(LIGNE(INDIRECT(A1&":"&A2)))=1 en ajoutant à la fonction précédente =1 Excel va contrôler les dates dont le critère 1 ou dimanche est vrai

            {FAUX;FAUX;FAUX;FAUX;VRAI;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;VRAI;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;VRAI;FAUX;FAUX;FAUX;FAUX;FAUX;FAUX;VRAI;FAUX;FAUX;FAUX;FAUX;FAUX}

            JOURSEM(LIGNE(INDIRECT(A1&":"&A2))) va établir la liste des jours semaine entre les deux dates, (1= dimanche, 2 = lundi etc ...

            {4;5;6;7;1;2;3;4;5;6;7;1;2;3;4;5;6;7;1;2;3;4;5;6;7;1;2;3;4;5;6}

            =SOMMEPROD((JOURSEM(LIGNE(INDIRECT(A1&":"&A2)))=1) *1) va compter le nombre de 1 de la syntaxe précédente soit 4

            A+
            Mike-31

            Une période d'échec est un moment rêvé pour semer les graines du savoir.
            0
            1. Ou se trouve la condition Du dimanche travaille des colonne b c de f ?
              0
              1. En A1 jai vendredi 28 novembre2014
                En A2 jai samedi 29 novembre 2014
                En A3 jai dimanche 30 novembre 2014
                En A4 jai lundi 31 novembre 2014

                En B1 j'ai MA (matin)
                En B2 j'ai AM (après-midi)
                En B3 jai AM
                En B4 jai NU ( nuit)

                Je voudrai savoir combien jai de dimanche en colonne A si je travaille SOIT MA SOIT AM SOIT NU ( colonne B)

                J espère etre clair !!!
                0
                1. Re,

                  en H4 que doit il y avoir, 18 le total des matins, après midi et nuit de la plage B2:B31, c'est cela et idem pour les colonnes suivantes

                  A+
                  Mike-31

                  Une période d'échec est un moment rêvé pour semer les graines du savoir.
                  0
                  1. ce nest pas le total des jours travaillée que je recherche mais le nombres de dimanches travaillés

                    en H4 je devrais avoir 3 pour 3 dimanche travaillés de la periode du mois de janvier

                    puis je le faire automatiquement ou avec une macro ?
                    0
                    1. Re,

                      ca devient plus clair, regarde comme cela pour H4

                      =SOMMEPROD((JOURSEM(A2:A31)=1)*(B2:B31<>"R") *1)
                      0
                      1. MERCI MERCI BEAUCOUP !!!!!

                        La formule est parfaite !!!!
                        0
                        1. es ce que on peut faire la même chose pour les samedi de nuit travaillés ??
                          0
                          1. Re
                            en retour ton fichier avec une macro

                            http://cjoint.com/?3KDskfX33hz

                            A+
                            Maurice
                            0
                            1. Re,

                              oui bien sur pour compter les samedis de nuit pour eq1

                              =SOMMEPROD((JOURSEM(A2:A31)=7)*(B2:B31="NUIT") *1)

                              il faut savoir que le premier jour semaine pour Excel est dimanche, lundi = 2, mardi = 3 etc ...

                              ensuite tu peux tester les R comme j'ai traité les NUIT ou les MATIN etc ...

                              A+
                              Mike-31

                              Une période d'échec est un moment rêvé pour semer les graines du savoir.
                              0
                              1. Merci Maurice ,

                                la macro fonctionne très bien aussi et les formules aussi
                                encore un grand merci

                                mon problème est résolu
                                0
                                1. Re bonjour
                                  voila un truc si tu veux jouer avec les macros

                                  http://cjoint.com/?0Lbom1FX6rw

                                  A=

                                  Maurice
                                  0
                                  1. Bonjour

                                    je voie une macro si j'ais bien compris

                                    Sub TestDimanche()
                                    For L = 2 To 31
                                    Njour = Weekday(Range("A" & L).Value)
                                    If Njour = 1 And Range("B" & L).Value <> "R" Then
                                    Eq1 = Eq1 + 1
                                    End If
                                    If Njour = 1 And Range("C" & L).Value <> "R" Then
                                    Eq2 = Eq2 + 1
                                    End If
                                    If Njour = 1 And Range("D" & L).Value <> "R" Then
                                    Eq3 = Eq3 + 1
                                    End If
                                    If Njour = 1 And Range("E" & L).Value <> "R" Then
                                    Eq4 = Eq4 + 1
                                    End If
                                    If Njour = 1 And Range("F" & L).Value <> "R" Then
                                    Eq5 = Eq5 + 1
                                    End If
                                    Next
                                    Range("H4").Value = Eq1
                                    Range("I4").Value = Eq2
                                    Range("J4").Value = Eq3
                                    Range("K4").Value = Eq4
                                    Range("L4").Value = Eq5
                                    End Sub

                                    A+
                                    Maurice
                                    -2