Bonjour à toute la sympathique communauté de Developpez.com,
Je fais aujourd'hui appel à vos connaissances et vos compétences Access afin de trouver un moyen de réaliser l'évolution que je souhaiterais mettre en place dans mon outil de "Saisie d'activité collaborateur".
Afin d'exprimer ma demande de la manière la plus claire et compréhensible possible, je vais commencer par vous présenter la structure partielle de ma base de données et je vous expliquerais ensuite ce que je souhaite réaliser.
Structure de ma BDD
•Je dispose d'un formulaire «frmSaisieJournaliereDetaillee», sur lequel est "posé" un sous-formulaire «sfrmSaisieJournaliereDetaillee_InsertionDate» qui donne la liste des jours travaillées (sous forme de date jj/mm/aaaa), pour un employé concerné.
•Le formulaire est lié à une table «dentete» qui contient uniquement le nom des employés (ce sont les clefs primaires).
•Le sous-formulaire est lié à une table «dligne» qui contient également le nom des employés et les dates travaillées pour chaque employés (ce sont tous 2 des clefs primaires).
-A l'aide des flèches de navigation, je peux sélectionner un à un les différents employés dont le nom s'affiche dans une zone de texte de mon formulaire. En fonction de l'employé sélectionné, ses dates travaillées s'affichent alors dans le sous-formulaire en colonne les unes à la suite des autres avec la possibilité pour l'employé de saisir de nouvelles dates à la suite de la dernière date affichée.
Mon problème
C'est là que se trouve la faille de mon projet. Pour l'instant les employés n'ont rentrés que les jours travaillés du mois de Juillet, mais arrivé au mois de Décembre il y aura déjà 184 jours (moins les weekends et jours fériés) d'affiché, et je vous laisse imaginer le nombre de jours qui s'afficheront dans 5 ans... Bonjour la scrollbar infinie
Mon besoin
Mon idée aurait donc été de rajouter une zone de texte ou une liste déroulante dans le sous-formulaire (ou le formulaire à voir...) qui contiendrait tous les mois de l'année. Ainsi, j'aurai la possibilité de n'afficher que les dates travaillées correspondant au mois sélectionné (suivra ensuite une liste déroulante des différentes années pour sélectionner la bonne année).
Seulement voilà, mes tables sont bien liés entre elles par le nom des employés ce qui me permet de rechercher les dates travaillées pour un employés donné mais je n'ai pas la possibilité de rechercher les dates correspondant à un mois donné...
La question est donc de savoir s'il existe un moyen (autre que de modifier toute la structure de ma base de donnée et de mes relations entre chaque table) pour effectuer cette recherche et s'il est possible d'extraire uniquement les dates de ma table «dligne» correspondant au mois sélectionné?
Dites oui! Dites oui!!!![]()
![]()
PS: Le fait de récupérer le mois sous forme de string puis de le transformer en numérique [ex: "Juillet" -> 04] puis de rechercher dans le Recordset toutes les dates qui sont de la forme jj/04/aaaa et enfin de les afficher est une des solutions à laquelle j'ai pensé mais je ne sais pas du tout si cela pourrait marcher et comment la mettre en place n'étant pas du tout à l'aise avec les Recordset... =]
Merci du fond du coeur pour avoir eu le courage de lire mon "commentaire/roman" et pour peut-être réussir à trouver une solution à mon problème.![]()
Partager