[Access2003] Problème de requête SQL en VBA
Résolu/Fermé
Makushiimu
Messages postés
6
Date d'inscription
jeudi 3 décembre 2009
Statut
Membre
Dernière intervention
10 février 2010
-
10 févr. 2010 à 14:46
blux Messages postés 26810 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 23 avril 2025 - 10 févr. 2010 à 17:58
blux Messages postés 26810 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 23 avril 2025 - 10 févr. 2010 à 17:58
A voir également:
- [Access2003] Problème de requête SQL en VBA
- Excel compter cellule couleur sans vba - Guide
- Find vba - Astuces et Solutions
- Vba attendre 1 seconde ✓ - Forum VB / VBA
- Sql lister les tables ✓ - Forum Programmation
- Logiciel sql - Télécharger - Bases de données
7 réponses
garion28
Messages postés
1545
Date d'inscription
mardi 16 juin 2009
Statut
Membre
Dernière intervention
3 avril 2011
406
10 févr. 2010 à 14:55
10 févr. 2010 à 14:55
où est stocké la valeur de currentuser que tu met dans utilisateur ?
tu as oublié d'entourer ta chaine utilisateur de ' dans ta requète (même si la variable est en string, ca ne dispense pas de mettre les ' ' dans la requete)
tu as oublié d'entourer ta chaine utilisateur de ' dans ta requète (même si la variable est en string, ca ne dispense pas de mettre les ' ' dans la requete)
Makushiimu
Messages postés
6
Date d'inscription
jeudi 3 décembre 2009
Statut
Membre
Dernière intervention
10 février 2010
10 févr. 2010 à 14:58
10 févr. 2010 à 14:58
Bah en fait, CurrentUser est une fonction d'Access qui renvoie l'id de l'utilisateur en cours.
Pour les quotes, je vais les rajouter, mais quand je mets un point d'arrêt et que je regarde ma requête, elle est propre, avec la bonne valeur d'id... ^^".
Pour les quotes, je vais les rajouter, mais quand je mets un point d'arrêt et que je regarde ma requête, elle est propre, avec la bonne valeur d'id... ^^".
blux
Messages postés
26810
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
23 avril 2025
3 335
10 févr. 2010 à 15:03
10 févr. 2010 à 15:03
Salut,
si user_id est de type nuémrique pas besoin de quotes, si type chaine alors l'enquoter (quote simple).
Par contre, pour un cas comme ça, il est superfétatoire d'utiliser un recordset (qui dans la théorie renvoie plusieurs lignes). Un dlookup renverrait le résultat en une ligne.
si user_id est de type nuémrique pas besoin de quotes, si type chaine alors l'enquoter (quote simple).
Par contre, pour un cas comme ça, il est superfétatoire d'utiliser un recordset (qui dans la théorie renvoie plusieurs lignes). Un dlookup renverrait le résultat en une ligne.
Makushiimu
Messages postés
6
Date d'inscription
jeudi 3 décembre 2009
Statut
Membre
Dernière intervention
10 février 2010
10 févr. 2010 à 15:06
10 févr. 2010 à 15:06
user_id est de type chaine (en gros, c'est un truc du style "a8062063"), mais je viens d'essayer de mettre les quotes, ça me met une erreur de syntaxe ^^.
Et je vais essayer le dlookup (je connaissais pas, concrètement, j'ai commencé le VBA y'a un mois et demi à tout casser, et encore, j'en ai pas fait pendant un mois ^^")
Et je vais essayer le dlookup (je connaissais pas, concrètement, j'ai commencé le VBA y'a un mois et demi à tout casser, et encore, j'en ai pas fait pendant un mois ^^")
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Makushiimu
Messages postés
6
Date d'inscription
jeudi 3 décembre 2009
Statut
Membre
Dernière intervention
10 février 2010
10 févr. 2010 à 15:24
10 févr. 2010 à 15:24
Alors, je viens de tester le DLookUp comme ceci :
Dim type_utilisateur As Variant
type_utilisateur = DLookup([user_type], [tbl_user], "[user_id] =" & utilisateur)
Et là, j'ai droit à l'erreur 2465 : Impossible de trouver le champ "|" auquel il est fait référence dans votre expression.
Une idée ? ^^
Dim type_utilisateur As Variant
type_utilisateur = DLookup([user_type], [tbl_user], "[user_id] =" & utilisateur)
Et là, j'ai droit à l'erreur 2465 : Impossible de trouver le champ "|" auquel il est fait référence dans votre expression.
Une idée ? ^^
blux
Messages postés
26810
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
23 avril 2025
3 335
10 févr. 2010 à 15:32
10 févr. 2010 à 15:32
Essaye ça :
"...[user_id] = '" & utilisateur & "'")Note les simples quotes comme séparateur de chaine...
Makushiimu
Messages postés
6
Date d'inscription
jeudi 3 décembre 2009
Statut
Membre
Dernière intervention
10 février 2010
10 févr. 2010 à 17:02
10 févr. 2010 à 17:02
C'est bon, ça marche ^^.
Merci Blux =).
Je poste ici la réponse, des fois que ça intéresse d'autres personnes :
Dim type_utilisateur As Variant
type_utilisateur = DLookup("[user_type]", "[tbl_user]", "[user_id] = '" & utilisateur & "'")
Merci Blux =).
Je poste ici la réponse, des fois que ça intéresse d'autres personnes :
Dim type_utilisateur As Variant
type_utilisateur = DLookup("[user_type]", "[tbl_user]", "[user_id] = '" & utilisateur & "'")
blux
Messages postés
26810
Date d'inscription
dimanche 26 août 2001
Statut
Modérateur
Dernière intervention
23 avril 2025
3 335
10 févr. 2010 à 17:58
10 févr. 2010 à 17:58
Le problème initial était sûrement aussi dû aux quotes...