Calcul date selon critère

[Résolu/Fermé]
Signaler
Messages postés
149
Date d'inscription
mercredi 9 mars 2016
Statut
Membre
Dernière intervention
15 octobre 2018
-
Messages postés
149
Date d'inscription
mercredi 9 mars 2016
Statut
Membre
Dernière intervention
15 octobre 2018
-
Bonjour,

j'aurai besoin de vos conseil pour un calcul de date.

J'aimerai que ma cellule "Date de référence" ce calcul toute seule en partant de ma date entrée. Les dates de référence sont le 1er et le 15 de chaque mois. Si la date est avant le 15 du mois la date de référence est le 1er du même mois.

Ex : la date entrée est Le 05/07/2017 la date de référence est le 01/07/2017 si la date est le 20/07/2017 la date de référence est le 15/07/2017, maintenant je préférerai que si la date est les dernier jours du mois qui met la date de référence au 1er du mois suivant mais cela n'est pas dramatique en soit.

Auriez-vous une solution pour moi SVP

1 réponse

Messages postés
17136
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 octobre 2021
910
bonjour, veux-tu faire ce calcul dans une requête?
Messages postés
149
Date d'inscription
mercredi 9 mars 2016
Statut
Membre
Dernière intervention
15 octobre 2018

Dans la table, car elle doit être utilisé dans la requête principal,
Messages postés
17136
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 octobre 2021
910 >
Messages postés
149
Date d'inscription
mercredi 9 mars 2016
Statut
Membre
Dernière intervention
15 octobre 2018

si tu veux stocker cette date de référence dans la table, plutôt que la calculer dans une requête, il faut intervenir au moment de créer un enregistrement dans la table.
comment l’enregistrement est-il créé dans la table?
est-il vraiment indispensable de stocker la date de référence dans la table?
Messages postés
149
Date d'inscription
mercredi 9 mars 2016
Statut
Membre
Dernière intervention
15 octobre 2018

La requête est trier selon la date du jour et trier selon la date de référence, mais il est juste que cette date peu être calculé et entrée selon le formulaire, si je ne fait que une requête pour le calcul de la date de référence.... Si je le fait ainsi quel serai la formule la plus approprié ?
Messages postés
17136
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
23 octobre 2021
910 >
Messages postés
149
Date d'inscription
mercredi 9 mars 2016
Statut
Membre
Dernière intervention
15 octobre 2018

je propose cette fonction:
Option Explicit
Function dateref(dateentree As Date) As Date
Const findumois As Integer = 2
Select Case Day(dateentree)
    Case Is < 15
        dateref = DateSerial(Year(dateentree), Month(dateentree), 1)
    Case Is > Day(DateSerial(Year(dateentree), Month(dateentree) + 1, 1) - 1) - findumois
        dateref = DateSerial(Year(dateentree), Month(dateentree) + 1, 1)
    Case Else
        dateref = DateSerial(Year(dateentree), Month(dateentree), 15)
End Select
End Function

tu dois l'insérer dans un module du fichier Access, et tu peux ensuite l'utiliser dans une requête, par exemple,
select dateentree,dateref(dateentree) as datereference from table;

si la date est un des deux derniers jours du mois, la date de référence est le premier jour du mois suivant. si tu veux plus ou moins que 2 jours, tu changes la valeur sur la ligne
Const findumois
Messages postés
149
Date d'inscription
mercredi 9 mars 2016
Statut
Membre
Dernière intervention
15 octobre 2018

Merci beaucoup, j'essai ça au plus vite