Fonctions de recherche vba

cs_skeut Messages postés 14 Date d'inscription mercredi 26 janvier 2005 Statut Membre Dernière intervention 11 juillet 2007 - 10 mars 2006 à 14:15
cs_skeut Messages postés 14 Date d'inscription mercredi 26 janvier 2005 Statut Membre Dernière intervention 11 juillet 2007 - 7 nov. 2006 à 09:24
Bonjour,

j'ai un application qui gère les programmes et leurs différentes versions (1 table programmes, 1 tables versions). Dans mon sous formulaire versions, j'ai un champ "No de version". Je souhaiterais qu'il soit géré automatiquement, pas que l'utilisateur doivent le renseigner.

En fait, il faudrait regarder dans le sous-formulaire "Versions" le plus grand numéro et ajouter 1. Comment puis-je faire cela? J'ai entendu parler de fonctions comme "Lookup", "Vbmax" mais même dans l'aide VBA, je n'ai pas trouvé ce que je cherche.

Est-ce que quelqu'un peut me dire comment elles fonctionnent ?

merci grand.

skeut

4 réponses

cs_skeut Messages postés 14 Date d'inscription mercredi 26 janvier 2005 Statut Membre Dernière intervention 11 juillet 2007
13 mars 2006 à 15:48
Est-ce que les fonctions Lookup et Vbmax existent en VBA

skeut
0
Rhoulz Messages postés 25 Date d'inscription jeudi 26 août 2004 Statut Membre Dernière intervention 30 août 2007
2 nov. 2006 à 22:12
Bonjou Skeut,

Je sais je post longtemps après toi ... mais j'ai le même probleme et en cherchant sur le forum je suis tombé sur ton post.

Aurais-tu trouver l'equivalent á la fonction LookUp de Excel en VBA?

Sinon je vais continuer á chercher et je posterais la solution ici, si il y en a une...

Roulz
0
Rhoulz Messages postés 25 Date d'inscription jeudi 26 août 2004 Statut Membre Dernière intervention 30 août 2007
6 nov. 2006 à 15:36
Bhen voila,

Une solution concernant Excel mais qui pourait egalement servir au VBA en general...

http://www.vbfrance.com/infomsg_VBA-EXCEL-FONCTION-LOOKUP-VBA_837218.aspx#3

Si ça peut t'aider ou les creuseurs des forum á travers recherches...

Rhoulz
0
cs_skeut Messages postés 14 Date d'inscription mercredi 26 janvier 2005 Statut Membre Dernière intervention 11 juillet 2007
7 nov. 2006 à 09:24
Salut Rhoulz,

A l'époque j'avais utilisé un MAX pour trouver le plus grand numéro de version existant dans ma table pour un programme donné. On peut certainement optimiser mais ça fonctionne.

A tout hazard, voici le code:

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


Dim rst As DAO.Recordset
Dim SQLMAX As String
Dim lngNoVersion As Long


SQLMAX "SELECT MAX(NoVersion)AS MaxNoVersion FROM Versions WHERE Num_Programme" & NumProg


Set rst = CurrentDb.OpenRecordset(SQLMAX, 2)


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


End If


rst.Close
Set rst = Nothing


genereNoVersion = lngNoVersion


End Function


skeut
0
Rejoignez-nous