[ACCESS] Requête SQL problème de syntaxe

Fermé
SubNoX - 26 juil. 2007 à 16:51
 SubNoX - 27 juil. 2007 à 13:26
Bonjour,

J'ai un problème avec une requête SQL dans ACCESS, j'aimerais depuis VB faire un requête vers une table avec laquelle mon formulaire(et donc ma table) n'est pas lié...

Voici le bout de code:

Set rFld = "SELECT 'Budget Teil IT ' " & strJahr & " Where PPM_ID = " & Me.PPM_ID & " From Mittelfristplanung"


J'ai déclarer rFld en Dao.Field

Merci de votre aide!

7 réponses

blux Messages postés 26531 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 16 décembre 2024 3 317
27 juil. 2007 à 09:13
Salut,

pis en plus quand des champs contiennent des espaces, il faut les mettre entre []...
1
zefoots Messages postés 146 Date d'inscription samedi 9 juin 2007 Statut Membre Dernière intervention 11 septembre 2007 62
27 juil. 2007 à 00:35
Bonjour,

Là comme ça, je vois 2 erreurs.

La 1ère, c'est qu'il faut utiliser un objet Recordset et non un objet Field.

La 2ème est que dans une requête SELECT, le FROM doit arriver avant le WHERE et non après.

J'espère t'avoir aidé
0
Hello,

Merci pour ton aide, mais ca a pas suffit...

Mais je vais expliquer plus précisément mon code:

Set rsTable = "SELECT 'Budget Teil IT ' " & strJahr & " From Mittelfristplanung Where PPM_ID = " & Me.PPM_ID & ""


Voilà comme j'ai corrigé, en fait le code veut dire: J'aimerais prendre le champ "Budget Teil IT année " de la table "Mittelfristplanung" dans la ligne ou l'ID est égal à l'ID de la ligne que je suis entrain de travailler dans mon formulaire!

Je sais pas si c plus clair!?

Merci pour votre aide!
0
blux Messages postés 26531 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 16 décembre 2024 3 317
27 juil. 2007 à 09:28
On ne peut pas mettre le contenu d'une requête dans un champ de formulaire avec un recordset, à moins de le parcourir...

Le mieux, dans ce cas, est d'utiliser la commande dlookup...
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Je te remercie blux, est-ce que tu pourrais me réécrir la ligne comme tu la pense juste!? car je viens d'essayer de plusieurs façon et ca donne rien...

Set rsTable = "SELECT [Budget Teil IT ] " & strJahr & " From Mittelfristplanung Where PPM_ID = " & Me.PPM_ID & ""


ou encore

Set rsTable = "SELECT [Budget Teil IT " & strJahr & "] From Mittelfristplanung Where PPM_ID = " & Me.PPM_ID & ""


Etc...
0
blux Messages postés 26531 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 16 décembre 2024 3 317
27 juil. 2007 à 10:00
Je mettrais ça, mais ça ne va pas aller, car tu fais un set...

Set rsTable = "SELECT [Budget Teil IT " & strJahr & "] From Mittelfristplanung Where PPM_ID = " & Me.PPM_ID & "

Prends l'option dlookup...
0
Merci beaucoup!!

Oui avec le Dlookup ca a fonctionné!!!

voici le code:

strBudget = DLookup("[Budget Teil IT " & strJahr & "]", "Mittelfristplanung", "PPM_ID = " & Me.PPM_ID)


Encore merci! qu'est-ce que je ferais sans vous...
0
blux Messages postés 26531 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 16 décembre 2024 3 317
27 juil. 2007 à 10:42
Encore merci! qu'est-ce que je ferais sans vous...
Aut'chose :-)
0
Lol

Bon en espérant que vous êtes toujours par là, j'ai une autre question...

Est-il possible de définir une variable dans un nom de control!?

je m'explique:

Mon control: Me.Jahr0
j'aimerais pouvoir mettre le "0" dans une variable parce que j'ai 8 controll et j'aimerais pouvoir ne pas devoir refaire un bout de code à chaque fois...

ce qui donnerais:

Me.JahrstrVar

Merci d'avance!
0
Ben voilà cette fois j'ai trouvé tout seul ;-)

Bientôt je pourrai commencer à un peu aider les autres moi aussi!

Voilà le résultat:

Me("Jahr" & strVal)
0
blux Messages postés 26531 Date d'inscription dimanche 26 août 2001 Statut Modérateur Dernière intervention 16 décembre 2024 3 317
27 juil. 2007 à 13:21
C'est là le problème d'avoir mis des champs avec une variable dans leur nom...:->

Je crois qu'on peut le faire, mais je ne retrouve pas comment, je cherche.
0
Merci, mais je l'avais trouvé entre temps ;-)
0