HELP - je ne trouve pas le problème dans ma requête

Résolu
Shion_SEIYA Messages postés 24 Date d'inscription jeudi 3 mars 2005 Statut Membre Dernière intervention 17 mars 2010 - 15 juin 2009 à 15:05
Shion_SEIYA Messages postés 24 Date d'inscription jeudi 3 mars 2005 Statut Membre Dernière intervention 17 mars 2010 - 17 juin 2009 à 13:48
Bonjour à tous, Voici mon souci, J'ai 2 Combo, 1 pour la version et 1 pour le numéro
Sur changement de la première, je veux récupérer l'identifiant de la version dans la table des versions
Voici ce que j'ai fait:

Dim RecupIdVersion As String
Dim Version As DAO.Recordset

RecupIdVersion = "Select TBL_Version.Id_Version FROM TBL_Version WHERE TBL_Version.Version=" & Me.CBO_Version1



Set Version = CurrentDb.OpenRecordset(RecupIdVersion)


Et là ça bug... ça me dit qu'il manque 1 élément. Donc je rentre dans l'execution et voici ce qui sort de la requête:



?RecupIdVersion
Select TBL_Version.Id_Version FROM TBL_Version WHERE TBL_Version.Version=PST

Celà me semblait bon mais non... Après test, je remarque que ça marcherait si de l'execution il ressortait:
?RecupIdVersion
Select TBL_Version.Id_Version FROM TBL_Version WHERE TBL_Version.Version="PST"

Mais je n'arrive pas à faire en sorte que les guillemets apparaissent dans le résultat de ma requête...
Quelqu'un aurait il la solution?

Merci

17 réponses

Calade Messages postés 1207 Date d'inscription dimanche 20 avril 2003 Statut Membre Dernière intervention 4 juin 2016 10
15 juin 2009 à 15:24
Bonjour,

Essaye comme ceci:

RecupIdVersion = "Select TBL_Version.Id_Version FROM TBL_Version WHERE TBL_Version.Version= '" & Me.CBO_Version1 & "'"

SQL n'accepte pas les guillemets mais les apostrophes (ou guillemets anglais).

Petit conseil, passe en ADO, DAO est complètement obsolète.

Calade
3
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
15 juin 2009 à 15:24
salut,


RecupIdVersion = "Select TBL_Version.Id_Version FROM TBL_Version WHERE TBL_Version.Version='" & Me.CBO_Version1 & "';"




++

<hr size="2" width="100%" />
Prenez un instant pour répondre à [sujet-SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp 
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
15 juin 2009 à 15:25
désolé

[../auteur/CALADE/87699.aspx Calade]

, on s'est croisé de peu ^^
0
hellangel777 Messages postés 267 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 26 novembre 2013 1
15 juin 2009 à 15:25
Bonjour,

RecupIdVersion = "Select TBL_Version.Id_Version FROM TBL_Version WHERE TBL_Version.Version='" & Me.CBO_Version1.text & "';"

essaye comme ca

HellAngel777
<hr />
Les machines ne font pas d'erreurs
Heureusement nous sommes humains
0

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

Posez votre question
hellangel777 Messages postés 267 Date d'inscription jeudi 5 février 2009 Statut Membre Dernière intervention 26 novembre 2013 1
15 juin 2009 à 15:26
post croisé en série :)
Et ce qui est bien c'est que l'on a le même message ^^

(Bonjour PCPT, Bonjour Calade)

HellAngel777
<hr />
Les machines ne font pas d'erreurs
Heureusement nous sommes humains
0
Calade Messages postés 1207 Date d'inscription dimanche 20 avril 2003 Statut Membre Dernière intervention 4 juin 2016 10
15 juin 2009 à 15:31
Bonjour,

Pour PCPT et [../auteur/HELLANGEL777/1600282.aspx hellangel777], je ne voudrais pas dire de bêtises mais je crois que le ";" à la fin de la requête n'existe qu'en Access, si c'est du SQL Server il n'y en a pas. Pour les autres SGBD, désolé, je ne sais pas.

Calade
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
15 juin 2009 à 15:40
salut à tous,

non

[../auteur/CALADE/87699.aspx Calade]

, au contraire, access est un des rares SGBD à accepter les requêtes sans ";", bien pour çà qu'il faut se forcer à toujours le mettre

(les moteurs "plus sérieux" acceptent plusieurs requêtes en une exécution, c'est pourquoi le ";" est fait : pour les séparer)
0
Shion_SEIYA Messages postés 24 Date d'inscription jeudi 3 mars 2005 Statut Membre Dernière intervention 17 mars 2010
16 juin 2009 à 11:35
Merci à tous pour votre rapidité.
J'ai envoyé des remerciement hier déjà mais apparement ça a buggé..

Sinon, je ne sais pas ce que c'est que DAO ou ADO... Donc je ne m'en occupe pas trop...

Pourrais je posé une question supplémentaire?
   Quel est la commande pour vider complètement une ComboBox?
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
16 juin 2009 à 13:31
salut,
tu te connectes à une base, tu utilises donc un moteur de connexion (entre autres)
DAO en est un, ancien
ADO en est un autre, ancien aussi mais un peu moins , à préférer donc
voir dans les références (menu projet > références) : Microsoft ActiveX Data Objects 2.X Library

dernière version : 2.8, avec le MDAC que le client doit installer (2.8 + sp1)
 
combo1.clear
++
0
Calade Messages postés 1207 Date d'inscription dimanche 20 avril 2003 Statut Membre Dernière intervention 4 juin 2016 10
16 juin 2009 à 13:40
Bonjour PCPT,

Pourtant quand on regarde le SQL généré par le designer de requêtes d'Access, le ";" est systématiquement rajouté, chose que ne supporte pas T_SQL, il faut le supprimer si on fait un copier-coller.

Où est-ce que je me trompe ?

Calade
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
16 juin 2009 à 14:05
t_sql, tu parles d'oracle? pas à dispo pour tester, je ne saurais te répondre avec certitude

mais le ; est bien la syntaxe normalisée
http://fr.wikipedia.org/wiki/Wikip%C3%A9dia:Requ%C3%AAtes_SQL#Essais_de_requ.C3.AAtes

certaines interfaces vont même ajouter ce séparateur s'il est manquant
(tu me diras, dans ce cas, comment savoir s'il est nécessaire ou pas ^^)
0
Calade Messages postés 1207 Date d'inscription dimanche 20 avril 2003 Statut Membre Dernière intervention 4 juin 2016 10
16 juin 2009 à 14:24
Erreur de ma part je voulais parler du SQL de SQL Server, qui marche très bien et je ne mets jamais le ";" quand je code mes requêtes à la mano.

C'est pour ça que je pensais que c'était une spécificité de plus d'Access.

Calade
0
Shion_SEIYA Messages postés 24 Date d'inscription jeudi 3 mars 2005 Statut Membre Dernière intervention 17 mars 2010
17 juin 2009 à 09:48
Je reviens sur le code que tu m'a passé PCPT...
Je le connaissais et il me semblait avoir essayer mais je n'étais pas sur.
J'ai donc réessayé et le Combo1.Clear ne fonctionne pas, j'ai cherché clearcontent, reset, removeall et rien.

Ya t'il un souci différent?
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
17 juin 2009 à 10:15
un sacré problème oui....
tu n'es peut-être pas en V6

as-tu combobox1.items.clear ??
0
Shion_SEIYA Messages postés 24 Date d'inscription jeudi 3 mars 2005 Statut Membre Dernière intervention 17 mars 2010
17 juin 2009 à 11:01
Je viens d'essayer et non plus... Je suis désespéré...
Bon j'ai quand même le bon vieux Combo1.Value=""
Mais bon je vide pas la liste et c'est pas glop....

Que puis je faire? Est ce une histoire de registre?
0
PCPT Messages postés 13272 Date d'inscription lundi 13 décembre 2004 Statut Membre Dernière intervention 3 février 2018 47
17 juin 2009 à 11:13
.Value? du VBA !!!
c'est pas croyable çà, 2 pages pour savoir le langage de développement
.clear existe en VBA
seulement comme tu attaches ta requête au datasource ou équivalent, le clear reste sans effet
il faut détacher la source de remplissage

http://www.google.fr/search?hl= fr&q= vider+combo+access &btnG =Recherche+Google&meta=&aq=f&oq=
0
Shion_SEIYA Messages postés 24 Date d'inscription jeudi 3 mars 2005 Statut Membre Dernière intervention 17 mars 2010
17 juin 2009 à 13:48
Ah bah désolé, il m'avait semblé avoir parlé d'access...

Mille excuses

En tout cas merci pour la réponse et la réactivité
0
Rejoignez-nous