compter le nombre de jour dans une semaine

Angelo7891

XLDnaute Junior
bonjour le forum
j'ai un petit souci .... j'ai crée un programme sous excel qui permet à des utilisateurs de mettre leurs productions mensuelles ...

Or toute les semaine j'ai besoin de faire un point sur cette production pour certaines opération .. je dois donc faire le pourcentage de ce qui à été fais pendant la semaine

-pour se faire comme nous ne travaillons ni les samedi ni les dimanche j'ai grisé mes cases correspondantes et pour les dimanche elles sont en pourcentage

-j'ai mis dans la case du samedi le total de la semaine et dans celle du dimanche le pourcentage


betement pour le porcentage j'avais mis qu'il était égal au total présent dans la case du samedi / 5

or il n'y a pas forcément 5 jour dans une semaine (jour férié ) et il se peut que si il n'y ai pas d'opération faite un jour donc pas de chiffre dans une des cases et donc mon pourcentae est faussé ...


alors je me demande comment faire pour savoir le nombre de case vraiment rempli dans une semaine

je vous met mon code avec la division par 5 si cela peut etre plus claire ...


Code:
For i = 5 To 35
    If (Cells(i, 25).NumberFormat = "0.00%") Then 'ligne correspondant à un dimanche 
        Cells(i, 25).Value = Cells(i - 1,25).Value / 5  ' la colonne 25 correspon à l'opération pour laquelle j'ai besoin de faire ce calcul 

    End If
Next i
 

Angelo7891

XLDnaute Junior
Re : compter le nombre de jour dans une semaine

alors voila ou j'en suis
j'ai fais ce code :

Code:
For i = 5 To 35

    If (Cells(i, 25).NumberFormat = "0.00%") Then 'test si la ligne est un dimanche 

    JourTravail = 0
        For j = 1 To 5 'pour les jours de la semaine qui suit
            If Cells(i + j, 25).Value <> "" Then  si une la case est "rempli"
                JourTravail = JourTravail + 1 
            Else
                Cells(i, 25).Value = ""
            End If
        Next j
        MsgBox ("nombre de case rempli dans cette semaine : " & JourTravail) 'ceci m'indique bien le nombre de case rempli 
        
        If JourTravail <> 0 Then 'si il y a au moin une case rempli 
            Cells(i, 25).Value = Cells(i - 1, 25).Value / JourTravail 
        End If
    End If


le souci c'est que pour la valeur de diamnche il divise le nombre du samedi par le nombre de jour de la semaine d'apres et non pas celle en cours ...
 

Discussions similaires

Réponses
5
Affichages
314

Statistiques des forums

Discussions
312 329
Messages
2 087 334
Membres
103 520
dernier inscrit
Azise