Select MAX... [Résolu]

Signaler
Messages postés
14
Date d'inscription
mercredi 26 janvier 2005
Statut
Membre
Dernière intervention
11 juillet 2007
-
Messages postés
1079
Date d'inscription
jeudi 14 novembre 2002
Statut
Membre
Dernière intervention
1 janvier 2012
-
Bonjour,

j'ai une table "Programmes" et une table "Versions"; la table version contient toutes les versions des programmes. Dans mon formulaire Programmes, j'ai un sous-formulaire Versions_SF avec un contôle ztNoVersion. J'aimerais éviter à l'utilisateur de saisir le numéro de version et qu'il se génère automatiquement; sur entrée de mon sous-formulaire, j'ai un événement avec ceci:

ztNoVersion = genereNoVersion()

Le problème est qu'il ne me génère pas un numéro de version égale à la version la plus grande du programme + 1 mais il prend le plus grand numéro de toutes les versions et fait + 1.

le code de ma fct est ci-dessous, merci de votre aide...

Public Function genereNoVersion() As Long
' Fonction qui génère automatiquement le numéro de version (Versions.NoVersion)


Dim rst As DAO.RecordsetSet rst  CurrentDb.OpenRecordset("SELECT MAX(Versions.NoVersion)AS MaxNoVersion FROM Versions,Programmes WHERE Programmes.NUMERO Versions.Num_Programme")


If IsNull(rst!MaxNoVersion.Value) Then
    'résultat de la requête vide, le rst retourne une ligne avec null dans la valeur
    genereNoVersion = 1
Else
    genereNoVersion = rst.Fields("maxNoVersion").Value + 1


End If


rst.Close
Set rst = Nothing


End Function


skeut

3 réponses

Messages postés
363
Date d'inscription
vendredi 14 février 2003
Statut
Membre
Dernière intervention
20 avril 2010
3
En fait il veut le numéro de version le plus grand +1 d'un programme si
j'ai bien compris. et si c'est ca faudrait peut être commencer par
filtrer sur le programme souhaiter non ? donc rajouter une clause dans
le where --> AND Programme.Nom = 'truc shmuck'
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 110 internautes nous ont dit merci ce mois-ci

Messages postés
260
Date d'inscription
vendredi 2 décembre 2005
Statut
Membre
Dernière intervention
3 novembre 2007

Je ne comprend pas bien ta question :
Tu recherches le plus grand chiffre de version (en l'occurence ce que tu as fait) ou la dernière entrée dans ta table...
Si c'est la deuxième version, tu dois prendre ton Max() sur l'id.

En esperant ne pas etre a cote de la plaque...

ElpenS
Messages postés
1079
Date d'inscription
jeudi 14 novembre 2002
Statut
Membre
Dernière intervention
1 janvier 2012

Bonjour,
vpoyo a raison

++
Moustachu