Alors voici le module que j'utilise pour chaque sous-états (ici donné pour avoir le sous-états de la partie imputable)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
| Public Sub MajReportImputable()
Dim ND As Integer, j As Integer
Dim DateJ As Date
ND = DaysInMonth(Forms!Frm_Pointage!Mois, Forms!Frm_Pointage!An)
DateJ = DateSerial(Forms!Frm_Pointage!An, Forms!Frm_Pointage!Mois, 1)
Reports!Détail_Mois_en_Cours_Pointage_Imputable!Titre.Caption = "Planning mensuel des heures imputables pour le mois de " & Format(DateJ, "mmmm yyyy")
For j = 1 To ND
Reports!Détail_Mois_en_Cours_Pointage_Imputable("Col" & j).Caption = UCase(Left(Format(DateJ, "ddd"), 1)) & vbCrLf & j
If EstWeekEnd(DateJ) Or EstFerie(DateJ) Then
Reports!Détail_Mois_en_Cours_Pointage_Imputable("Col" & j).BackColor = 13428479
Reports!Détail_Mois_en_Cours_Pointage_Imputable("Jour" & j).BackColor = 13428479
Reports!Détail_Mois_en_Cours_Pointage_Imputable("Total" & j).BackColor = 13428479
Else
Reports!Détail_Mois_en_Cours_Pointage_Imputable("Col" & j).BackColor = 16761024
Reports!Détail_Mois_en_Cours_Pointage_Imputable("Jour" & j).BackColor = vbWhite
Reports!Détail_Mois_en_Cours_Pointage_Imputable("Total" & j).BackColor = vbWhite
End If
DateJ = DateJ + 1
Next j
For j = 29 To ND
Reports!Détail_Mois_en_Cours_Pointage_Imputable("Col" & j).Visible = True
Reports!Détail_Mois_en_Cours_Pointage_Imputable("Jour" & j).Visible = True
Next j
For j = (ND + 1) To 31
Reports!Détail_Mois_en_Cours_Pointage_Imputable("Col" & j).Visible = False
Reports!Détail_Mois_en_Cours_Pointage_Imputable("Jour" & j).Visible = False
Next j
End Sub |
Ce même code s'utilise pour la partie non-imputable. J'insère les deux sous-états dans un état principal, mais le problème est que la mise ne apge faite grace a ce module ne reste pas dans l'état principal. Je souhaite donc faire pour un sous-formulaire quelque chose du style:
Forms!Frm_Pointage!SF_Pointage.Form
ou Frm_Pointage est le formulaire principal et SF_Pointage le sous-formulaire.
Partager