Probleme recherche date la plus proche dans une table

bugmen0t Messages postés 12 Date d'inscription lundi 10 juillet 2006 Statut Membre Dernière intervention 2 octobre 2010 - 25 avril 2008 à 11:15
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 - 25 avril 2008 à 14:53
Bonjour à tous,

Je galère un peu avec access en vba

J'ai une table horaire avec des id et des dates
J'ai une table dossier avec des nom de dossier et des dates

Et je voudrais rechercher la date horaire la plus proche en jour de la date du dossier.

Et je ne sais pas comment m'y prendre

10 réponses

jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
25 avril 2008 à 11:18
Salut,

Je pense que si tu fais un requete avec MAX(ChampsDate) tu devrais récupérer la date la plus proche d'aujourdhui (si les dates sont inférieures à aujourd'hui)

@+: Ju£i?n
Pensez: Réponse acceptée
0
bugmen0t Messages postés 12 Date d'inscription lundi 10 juillet 2006 Statut Membre Dernière intervention 2 octobre 2010
25 avril 2008 à 11:23
les dates horaires sont des dates futures de même pour les dates de dossier

par exemple j'ai un date de dossier 30/04/2008

il faut rechercher dans la table horaire la date la plus proche:

26/04/2008
28/04/2008
31/04/2008
01/05/2008

pour cet exemple il faudrait que la focntion me retourne le 31/04/2008
0
lillith212 Messages postés 1229 Date d'inscription vendredi 16 novembre 2007 Statut Membre Dernière intervention 16 juin 2009
25 avril 2008 à 11:51
salut,

Alors idée comme ca....
Dans ta requete tu prends juste toute les dates supérieur à ta date dossier tu classes dans l'ordre croissant ton résultat et tu prends le premier résultat...

SLB
0
yokulan Messages postés 37 Date d'inscription mardi 26 avril 2005 Statut Membre Dernière intervention 31 juillet 2012
25 avril 2008 à 12:44
Le problème c'est qu'il faut prendre les dates compris entre date du dossier -5j et date du dossier +15j
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
25 avril 2008 à 12:52
Re,
>[auteur/YOKULAN/499062.aspx yokulan]: Et si tu nous disait TOUT ce que l'on doit savoir, plutot que de donner les infos au compte goutte.

Bref soit précis dans l'enoncé de ton problème, tu fera gagner du temps à tout le monde

@+: Ju£i?n
Pensez: Réponse acceptée
0
lillith212 Messages postés 1229 Date d'inscription vendredi 16 novembre 2007 Statut Membre Dernière intervention 16 juin 2009
25 avril 2008 à 12:58
Re,
jrivet a raison... Explique clairement et pas par brides d'information

Merci
SLB
0
bugmen0t Messages postés 12 Date d'inscription lundi 10 juillet 2006 Statut Membre Dernière intervention 2 octobre 2010
25 avril 2008 à 14:06
Bon bas je repete

j'ai une table Dossier(nom,personne,date_dossier)
j'ai une table Horaires(id,date_horaire)

et je voudrais rechercher dans la table Horaires la date la plus proche, pour chaque dossier de chaque personne, compris entre (date_dossier-5jours) et (date_dossier +15jours).

exemple:
Table Dossier :

Nom | ID _personne | date_dossier
D1    | p1                  | 01/05/2008
D2    | p2                  | 09/05/2008

Table Horaires :

ID _personne | date_horaire
p1                  | 31/04/2008
p1                  | 03/05/2008
p1                  | 05/05/2008
p2                  | 01/05/2008
p2                  | 05/05/2008
p2                  | 10/05/2008

pour le dossier D1 dont la date est 01/05/2008 et qui est traité par p1 il faudarit qu'il me renvoye 31/04/2008
pour le dossier D2 dont la date est 09/05/2008 et qui est traité par p2 il faudarit qu'il me renvoye 10/05/2008

En espérant être assez claire.
0
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
25 avril 2008 à 14:45
Re,
Souhaites tu le faire en une fois ? ou en passant un parametre à chaque fois (comme le nom de la personne oiu je ne sais quoi d'autre)

@+: Ju£i?n
Pensez: Réponse acceptée
0
bugmen0t Messages postés 12 Date d'inscription lundi 10 juillet 2006 Statut Membre Dernière intervention 2 octobre 2010
25 avril 2008 à 14:53
 je rentre juste la date du dossier et la personne et il me trouve la date horaire la plus proche
0
jrivet Messages postés 7393 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
25 avril 2008 à 14:53
Re,
Bon alors j'ai réussi ceci pour l'instant, récupérer les différences entre la date_dossier et la date_horaires

avec ceci

SELECT Horaires.ID_Personne AS Personne, Abs(Horaires.date_horaire - Dossier.date_dossier) AS Différence
FROM Horaires INNER JOIN Dossier ON Horaires.ID_Personne = Dossier.ID_personne
WHERE (((Horaires.ID_Personne) In (SELECT DISTINCT Dossier.ID_Personne FROM Dossier)));

@+: Ju£i?n
Pensez: Réponse acceptée
0