Calcul date selon critère

Résolu
Lucasine Messages postés 154 Date d'inscription   Statut Membre Dernière intervention   -  
Lucasine Messages postés 154 Date d'inscription   Statut Membre Dernière intervention   -
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
A voir également:

1 réponse

yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
bonjour, veux-tu faire ce calcul dans une requête?
0
Lucasine Messages postés 154 Date d'inscription   Statut Membre Dernière intervention  
 
Dans la table, car elle doit être utilisé dans la requête principal,
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > Lucasine Messages postés 154 Date d'inscription   Statut Membre Dernière intervention  
 
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?
0
Lucasine Messages postés 154 Date d'inscription   Statut Membre Dernière intervention  
 
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é ?
0
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584 > Lucasine Messages postés 154 Date d'inscription   Statut Membre Dernière intervention  
 
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
0
Lucasine Messages postés 154 Date d'inscription   Statut Membre Dernière intervention  
 
Merci beaucoup, j'essai ça au plus vite
0