Recherche de la dernière date de modification sous Access SQL VBA

lebelm
Messages postés
17
Date d'inscription
mercredi 25 décembre 2002
Statut
Membre
Dernière intervention
11 juin 2006
- 2 févr. 2006 à 14:59
lebelm
Messages postés
17
Date d'inscription
mercredi 25 décembre 2002
Statut
Membre
Dernière intervention
11 juin 2006
- 2 févr. 2006 à 20:02
Bonjour tlm,

J'aurais une petite question.

J'ai une application sous Access d'où je fait une requête en VBA.

Me.RecordSource = "SELECT TCompagnie.Cie_Turbo_Numero, TCompagnie.Cie_Numero, TRRM_Kits.Kits_NoKit, TRRM_Kits.Kits_Rev, TRRM_Kits.Kits_Date " & _
"FROM TCompagnie INNER JOIN TRRM_Kits ON TCompagnie.Cie_Numero=TRRM_Kits.Kits_CodeClient " & _ "WHERE TCompagnie.Cie_Numero " & Cie_Id & " And TRRM_Kits.Kits_NoKit '" & Kit_Id & "' " & _
"ORDER BY TRRM_Kits.Kits_Rev;"

Il me sort ce que j'ai besoin sauf que j'aimerais que lorsque qu'il me sort des valeur DISTINCT sur TRRM_Kits.Kits_Rev, qu'il me sorte seulement la date la plus récente. Quelqu'un pourrait t'il m'aider.

Ex.



<CAPTION>Ce que j'ai comme résultat</CAPTION>

----

Cie_Turbo |
Cie_Numero |
Kits_NoKit |
Kits_Rev |
Kits_Date |

----

00000MAACO,
88,
0001,
1,
17 janvier 2006,
----

00000MAACO,
88,
0001,
1,
16 janvier 2006,
<TFOOT></TFOOT>



<CAPTION>Ce que je voudrais comme résultat</CAPTION>

----

Cie_Turbo |
Cie_Numero |
Kits_NoKit |
Kits_Rev |
Kits_Date |

----

00000MAACO,
88,
0001,
1,
17 janvier 2006,
----

<STRIKE>00000MAACO</STRIKE>,
<STRIKE>88</STRIKE>,
<STRIKE>0001</STRIKE>,
<STRIKE>1</STRIKE>,
<STRIKE>16 janvier 2006</STRIKE>,
<TFOOT><STRIKE></STRIKE></TFOOT>

Merci. J'espère être assez préci dans ma question

3 réponses

Simouss33
Messages postés
85
Date d'inscription
jeudi 17 novembre 2005
Statut
Membre
Dernière intervention
15 février 2006
2
2 févr. 2006 à 18:07
Il faut légèrement modifier ta requête sql

"SELECT TCompagnie.Cie_Turbo_Numero, TCompagnie.Cie_Numero, TRRM_Kits.Kits_NoKit, TRRM_Kits.Kits_Rev, Last(TRRM_Kits.Kits_Date) " & _
"FROM TCompagnie INNER JOIN TRRM_Kits ON TCompagnie.Cie_Numero=TRRM_Kits.Kits_CodeClient " & _ "WHERE TCompagnie.Cie_Numero " & Cie_Id & " And TRRM_Kits.Kits_NoKit '" & Kit_Id & "' " & _
"GROUP BY TRRM_Kits.Kits_Rev " &_
"ORDER BY TRRM_Kits.Kits_Rev;"

Bon je suis pas vraiment sûr de cette requête mais tu peux en créer une sous Access : tu fais un clic droit sur un champ de la requête et tu appuie sur la somme. Ensuite tu remplace "Regroupement" du champ Kits_Date par Dernier.
Pour récupérer le code SQL tu vas dans la barre d'outils et au lieu de basculer en mode Affichage, mets toi en mode SQL. Tu n'as plus qu'à faire ton copier coller dans ton code.

J'espère avoir été clair...
0
Simo_TSSI
Messages postés
16
Date d'inscription
mercredi 25 janvier 2006
Statut
Membre
Dernière intervention
18 mai 2006

2 févr. 2006 à 19:11
salut
ajouter top 1 apres select ca va marcher

" select top 1 la suit ................."
@+
0
lebelm
Messages postés
17
Date d'inscription
mercredi 25 décembre 2002
Statut
Membre
Dernière intervention
11 juin 2006

2 févr. 2006 à 20:02
Il m'apparaît l'erreur suivant.

Vous avez essayé d'exécuter une requête ne comprenant pas l'espression spécifiée 'Cie_Turbo_Numero' comme une partie de la fonction d'agrégat.

Quand a top 1, cela n'interagie aucunement dans ma requête.
0