Absences payées
Bonjour à tous,
Les équipes sont formées de 5 joueurs chacune.
Le jeu se déroule sur 34 semaines minimum (Ça pourrait augmenter jusqu'à 40 semaines)
Lorsqu'un joueur s'absente dans une équipe, il doit payer $10,00 pour chaque semaine d'absence.
Les joueurs absents sont identifiés par un "x" dans la colonne "H" de chaque semaine (incluant l'Abat-Neuf).
Les absences sont comptabilisées dans le tableau en CU175:CY418 de chacune des feuilles.
Le tableau en CU175:CY418, dans chacune des semaines, est celui de la semaine suivante.
J'aimerais, si possible un code, une formule ou une fonction qui produirait l'opération suivante:
Lorsque les joueurs d'une équipe paient leurs absences, le montant du paiement s'enregistre dans la colonne "H" de la feuille Budget hebdo., vis-à-vis le numéro de l'équipe à la date du paiement.
Exemple : Les joueuses Lise Mc lean et Lucille Pinel sont absentes à L'Abat-Neuf et la première semaine ("x" dans la colonne H). Comme elle sont revenues pour la 2ème semaine, elles doivent chacune $20,00. Étant les seuls joueurs absents qui ont payé leur dû, le total de $40,00 doit apparaître dans le Budget hebdo. de la Sem.02 en H7.
Le joueur Denis Locas s'est absenté la 1ère semaine, 2ème semaine et est toujours absent la 3ème semaine ("x") dans la colonne H). Donc ce joueur n'aura à payer ses absences qu'à son retour la 4ème semaine ($30,00). Ce montant devra apparaître sur le Budget hebdo. de la 4ème semaine.
Ce qui fait que les joueurs absents peuvent se chevaucher d'une semaine à l'autre mais ne payeront pas leurs absences en même temps. Seulement qu'à leur retour respectif.
En d'autres mots, les montants payés apparaissent sur la feuille du budget-hebdo. qu'au retour des joueurs absents, et ce vis-à-vis les numéros de leurs équipes.
J'espère avoir été assez claire dans mes explications.
Merci beaucoup pour votre aide
SALUT
Étant les seuls joueurs absents qui ont payé leur dû, le total de $40,00 doit apparaître dans le Budget hebdo. de la Sem.02 en H7.
Qu’à son retour la 4ème semaine ($30,00). Ce montant devra apparaître sur le Budget hebdo. de la 4ème semaine.
Je pense que la présentation de la feuille "Budget hebdo." ne rassemble pas a ce que vous voulez.
Bonjour Amir,
Je m'excuse pour la confusion.
Le Budget hebdo change de date à chaque semaine. À chaque fois que vous cliquez le bouton "transférer", les numéros des joueurs de la Colonne B de l'abat-Neuf et des Sem.01.....Sem.02....Etc...Etc.. apparaissent dans la semaine suivante, le Budget hebdo. change de semaine et suit la date de la semaine active. Le fichier en pièce jointe dans mon premier message indique que la semaine active est la 6ème. Pour remettre le fichier à la feuille Abat-Neuf, il suffit d'effacer les numéros de la colonne B de chacune des semaines.
Ce que je veux dire c'est que le $40.00 doit apparaître dans le Budget hebdo en date de la 2ème semaine vis-à-vis du no. de l'équipe.
1.
Pour fin d'exercice disons que le jeu en est à la 2ème semaine et que les joueuses absentes sont revenues au jeu à la 2ème semaine, le budget hebdo. indiquera la date de la 2ème semaine et le $40.00 devra s'inscrire à cette date.
Si le jeu en est à la 4ème semaine, et que le joueur absent revient au jeu cette semaine, même chose pour le $30.00. IL doit apparaître dans le Budget hebdo. de la 4ème semaine vis-à-vis le no. de l'équipe 1.
Ce que j'essaie d'expliquer, c'est que le paiement de l'amende pour l'absence est fait à la semaine su retour au jeu du joueur absent.
Mon problème est que les joueurs peuvent s'absenter à tous moments. Par ce fait, 2 joueurs peuvent être absent la même semaine, mais s'il ne reviennent pas au jeu à la même semaine, le paiement de l'amende ne se fait qu'au retour de chacun des joueurs.
Exemple: Absent pour la Sem.01, Sem.02, Sem.03, Retour la Sem.04. Le paiement de $30.00 apparaîtra dans le Budget hebdo. en date de la semaine 4.
Absent pour la Sem.03, Sem.04, Retour la Sem.05. Le paiement de $20.00 apparaîtra dans le Budget hebdo. en date de la Sem.05.
Vous remarquerez que les joueurs se sont tous les deux absentés la Sem.03 mais que leur retour n'est pas à la même semaine. Ce qui fait que le paiement doit se faire qu'au retour du joueur.
L'important est de calculer le nombre de semaines d'absence et mettre le montant de l'amende dans le Budget hebdo en date de la semaine de retour.
Merci beaucoup pour l'intérêt que tu portes à mon problème. En espérant que les explications additionnelles te seront utiles.
Salut
Par ce fait, 2 joueurs peuvent être absent la même semaine, mais s’ils ne reviennent pas au jeu à la même semaine, le paiement de l'amende ne se fait qu'au retour de chacun des joueurs.
1-Si vous voulez dire que le groupe n est pas autorise à payer son du que si tous les membres sont présent
2-J ai considéré que tous les joueurs sont présent seulement si le groupe n a aucune "x" Ce qui signifie qu’ils ont tous paye leurs dûs sans exceptions
alors
Ce code à placer à l intérieure de code qui est lancé par le bouton transférer, je pense "Standar "
Dim s As Integer
Dim num_grou As Integer
Dim due As Currency
Dim sem_arry
Dim store As Integer
sem_arry = Array("Abat-Neuf", "Sem.01", "Sem.02", "Sem.03", "Sem.04", "Sem.05", "Sem.06", "Sem.07", "Sem.08", "Sem.09", "Sem.10", _
"Sem.11", "Sem.12", "Sem.13", "Sem.14", "Sem.15", "Sem.16", "Sem.17", "Sem.18", "Sem.19", "Sem.20", _
"Sem.21", "Sem.22", "Sem.23", "Sem.24", "Sem.25", "Sem.26", "Sem.27", "Sem.28", "Sem.29", "Sem.30", _
"Sem.31", "Sem.32", "Sem.33", "Sem.34", "Sem.35", "Sem.36", "Sem.37", "Sem.38", "Sem.39", "Sem.40", _
"Sem.41", "Sem.42", "Sem.43", "Sem.44", "Sem.45")
If Not ActiveSheet.Name = "Abat-Neuf" Then
store = Val(Mid(ActiveSheet.Name, 5))
For num_grou = 0 To 15
s = store
due = 0
If calculater(ActiveSheet.Name, num_grou) = 0 Then
Do Until calculater(sem_arry(s - 1), num_grou) = 0
s = s - 1
due = due + (calculater(sem_arry(s), num_grou) * 10)
If s = 0 Then Exit Do
Loop
Worksheets("Budget hebdo.").Range("H" & 7 + (2 * num_grou)).Value = Format(due, "$0.00")
End If
Next
End If 'Not ActiveSheet.Name = "Abat-Neuf" ThenCette formule à placer dans le même module à l extérieure de tout code (indépendante)
Function calculater(ByVal nom_de_feuil As String, num_grou As Integer)
Dim counter As Integer
Dim i As Integer
counter = 0
For i = 2 + (10 * num_grou) To 2 + (10 * num_grou) + 8
If Worksheets(nom_de_feuil).Range("H" & i).Value = "x" Then
counter = counter + 1
End If
Next
calculater = counter
End FunctionAlors si ca ne résoudre pas ton problème ou il le fait parcellement SVP reposter ton problème à nouveau
Bonjour Amir,
Merci pour ta réponse rapide.
Tu devrais avoir plus confiance en toi. Ton code et ta fonction font le travail merveilleusement bien.
Je te remercie grandement pour avoir résolu mon problème.
Passe une belle journée