Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access
Access Forum d'entraide sur Microsoft Access. Avant de poster -> La F.A.Q Access
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 10/11/2007, 20h39   #1
Candidat au titre de Membre du Club
 
Inscription : octobre 2005
Messages : 50
Détails du profil
Informations forums :
Inscription : octobre 2005
Messages : 50
Points : 10
Points : 10
Par défaut rechercher Enregistrement precedent

Bonjour,
Dans ma requete je voudrai calculer l'ecart en jour entre 2 dates.
J'ai besoin de prendre le MAX (critere) et surtout le précedent a savoir le MAX -1.

Faut il le faire en VBA ? et si oui qu'elle est le code pour revenir sur le precedent de la date la plus récente (MAX)

Je sais pas si je suis bien clair

En fait j'ai besoin de calculer l'ecart entre 2 date de mise a jour.
la derniere mise a jour créer et la précédente mise a jour sachant qu'il peut y avoir plusieur mise a jour pour un meme dossier.

Merci d'avance pour votre aide
Rikou31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/11/2007, 08h00   #2
Membre Expert
 
Inscription : août 2006
Messages : 1 435
Détails du profil
Informations forums :
Inscription : août 2006
Messages : 1 435
Points : 1 756
Points : 1 756
Possible avec 3 requêtes (ici nommées req1, req2 et req3)

req1 donne le jour Max
Code :
1
2
 
SELECT Max(Table2.jour) AS JourMax FROM Table2;
req2 retourne le jour Max-1
Code :
1
2
3
4
 
SELECT Max(Table2.jour) AS [jourMax-1]
FROM Table2 LEFT JOIN req1 ON Table2.jour = req1.JourMax
WHERE (((req1.JourMax) Is Null));
req3 retourne l'écart entre les 2 jours
Code :
1
2
3
 
SELECT DateDiff("d",[jourMax-1],[jourMax]) AS ecart
FROM req1, req2;
Pour l'exemple
-créer une table nommée Table2 avec un champ date nommé jour puis entrer quelques dates
-créer les 3 requêtes avec les noms req1, req2 et req 3
- lancer la requete req3

Adapter avec vos données
helas est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/11/2007, 18h22   #3
Candidat au titre de Membre du Club
 
Inscription : octobre 2005
Messages : 50
Détails du profil
Informations forums :
Inscription : octobre 2005
Messages : 50
Points : 10
Points : 10
Super un grand merci
Je l'ai adapter et le résultat est satisfaisant

Merci encore
Rikou31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/11/2007, 20h22   #4
Membre Expert
 
Inscription : mars 2006
Messages : 1 331
Détails du profil
Informations forums :
Inscription : mars 2006
Messages : 1 331
Points : 1 460
Points : 1 460
Bonsoir,

On peut essayer avec une requête :
Code :
1
2
3
4
5
6
7
SELECT DISTINCT TOP 1 Tbl_Date.Date AS AvantDerniereDate, 
          Tbl_Date_1.Date AS DerniereDate, 
          DateDiff("d",[Tbl_Date].[Date],[Tbl_Date_1].[Date]) AS Difference
FROM Tbl_Date, Tbl_Date AS Tbl_Date_1
         WHERE (((Tbl_Date_1.Date)=DLast("[Date]","[Tbl_Date]")) AND 
         ((DateDiff("d",[Tbl_Date].[Date],[Tbl_Date_1].[Date]))<>0))
ORDER BY Tbl_Date.Date DESC;
Cordialement.
__________________
Questions techniques par MP
Le peu que je sais, c'est à mon ignorance que je le dois.
...............................................................................Sacha Guitry
francishop est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/11/2007, 09h44   #5
Membre éclairé
 
Avatar de boussafi
 
Homme
Ingénieur développement logiciels
Inscription : septembre 2007
Messages : 342
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : Algérie

Informations professionnelles :
Activité : Ingénieur développement logiciels
Secteur : Industrie

Informations forums :
Inscription : septembre 2007
Messages : 342
Points : 397
Points : 397
Envoyer un message via Yahoo à boussafi Envoyer un message via Skype™ à boussafi


On peut utilise meme la fonction LAST au lieu de MAX pour s'assurer qu'on est sur la derniere date


bon courage
boussafi est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 00h55.


 
 
 
 
Partenaires

Hébergement Web