Vba access : récupérer une valeur précise

Résolu/Fermé
arzawe
Messages postés
70
Date d'inscription
mardi 24 août 2004
Statut
Membre
Dernière intervention
14 septembre 2014
- 19 mars 2008 à 11:55
 Funstenolf - 18 juin 2014 à 10:33
Bonjour,

Je cherche à récupérer une valeur précise dans un tableau avec la formule suivante :

sql = "SELECT [Ratios]![HMO total] FROM [Ratios] WHERE [Ratios]![Ligne] = 'TOTAL - U2"
MsgBox = sql

Mais ce qu'il me donne dans ma msgbox, c'est ma formule. moi, ce que je voudrais c'est le nombre auquel cela correspond dans la table.

Qu'est-ce qui manque à ma formule ?

Merci de votre aide

6 réponses

Velvel-Miho
Messages postés
32
Date d'inscription
mardi 12 février 2008
Statut
Membre
Dernière intervention
20 mars 2008
21
20 mars 2008 à 15:01
Euh, oubli ce que j'ai mis.
Tiens voilà ce que tu dois écrire :

'variable :
Dim requete As Recordset
Dim sql As String
Dim resultat As Currency

'code d'exécution de la requête :
sql = " SELECT champ1, champ2, ... FROM table WHERE ... ;"
Set requete = CurrentDb.OpenRecordset(sql)
'première ligne de résultat :
requete.MoveFirst
resultat = requete("champ1")


et enfin ty affiche resultat

Voilà
15
arzawe
Messages postés
70
Date d'inscription
mardi 24 août 2004
Statut
Membre
Dernière intervention
14 septembre 2014
5
25 mars 2008 à 15:25
Merci de tes réponses, mais j'ai trouvé une autre solution en creusant un peu :

mavariable = DLookup("[HMO total]", "[Ratios]", "[Ratios]![Ligne] = 'TOTAL - U2'")

où HMO total est ma colonne
Ratios est ma table
et la troisième expression est mon critère.

Et ainsi, pas besoin de passer par le sql
0
Bonjour, et si à ta condition correspondent plusieurs valeurs la fonction DLookup réupère aussi toutes ces valeurs?
-1