Apostrophe, Access, Erreur de syntaxe

Résolu
Sinsitrus
Messages postés
855
Date d'inscription
samedi 11 juin 2005
Statut
Membre
Dernière intervention
21 août 2015
- 27 févr. 2013 à 19:25
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
- 27 févr. 2013 à 22:10
Salut à tous !

J'ai une erreur de syntaxe lorsque je clique sur un mot avec apostrophe :
RST.Open "SELECT * FROM Tb_Lexique where titre like 'T%'", CNX, adOpenStatic, adLockOptimistic, adCmdText
If RST.RecordCount > 0 Then
    LST_Titre.Clear
    While Not RST.EOF
        LST_Titre.AddItem RST("Titre")
        RST.MoveNext
    Wend
End If
RST.Close


Vous avez une solution svp ?
Merci

----------
OS : Windows 7 Pro 64 Bit
Platforme : Visual Basic 6.0
A voir également:

10 réponses

ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
235
27 févr. 2013 à 19:53
et tu n'as qu'à insérer le "%" ===>>
T = "aaaa' bbbb"
MsgBox "SELECT * FROM Tb_Lexique where titre like """ & T & "%"""

Simple !

________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
3
cs_MPi
Messages postés
3877
Date d'inscription
mardi 19 mars 2002
Statut
Membre
Dernière intervention
23 août 2018
20
27 févr. 2013 à 19:54
Tu dois doubler les apostrophes pour éviter les erreurs.
Mais je ne vois pas vraiment comment les doubler avec une expression comme Like 'T%'

Avec une variable, on irait comme ceci
"SELECT * FROM Tb_Lexique where titre = '" & Replace(MaVariable, "'", "''") & "'"

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
3
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
235
27 févr. 2013 à 19:32
Bonjour,
lorsque je clique sur un mot avec apostrophe

quel est ce mot ? Tu cliques sur quoi ?
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
235
27 févr. 2013 à 19:40
Bon..
Il te faut apprendre à être très précis, lorsque tu demandes de l'aide
1) Je devine que T est dans cette "affaire" une variable
regarde ce que fait ceci :
T = "aaaa bbbb"
MsgBox "SELECT * FROM Tb_Lexique where titre like """ & T & """"

2) ton like est ici abusif. Un = suffit puisque tu teste une égalité !
________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0

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

Posez votre question
Sinsitrus
Messages postés
855
Date d'inscription
samedi 11 juin 2005
Statut
Membre
Dernière intervention
21 août 2015

27 févr. 2013 à 19:46
Le T% affiche dans la listbox tout les mot commençant par T....
[quote=Exemple]Traitement curatif
Traitement d'appoint
Traitement d'attaque
Traitement de fond
Traitement de la crise/quote
Alors si je clique sur Traitement d'appoint, j'ai ce bug à cause de l'apostrophe.
0
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
235
27 févr. 2013 à 19:51
Je t'ai alors déjà répondu


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
235
27 févr. 2013 à 19:58
Bonsoir, MPI.
Comme je l'ai fait, tout bêtement.


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0
Sinsitrus
Messages postés
855
Date d'inscription
samedi 11 juin 2005
Statut
Membre
Dernière intervention
21 août 2015

27 févr. 2013 à 19:58
J'ai compris dès ton second message, mais il n'a rien résolu :s
RST.Open "SELECT * FROM Tb_Lexique where titre like """ & T & "%""", CNX, adOpenStatic, adLockOptimistic, adCmdText
If RST.RecordCount > 0 Then
    LST_Titre.Clear
    While Not RST.EOF
        LST_Titre.AddItem RST("Titre")
        RST.MoveNext
    Wend
End If
RST.Close


Merci MPi, mais idem problème pour le like...
0
Sinsitrus
Messages postés
855
Date d'inscription
samedi 11 juin 2005
Statut
Membre
Dernière intervention
21 août 2015

27 févr. 2013 à 20:03
Oh merde ! Ce n'est même pas de là le problème !

Résolu, merci à tous les deux pour votre aide, pour ton bout de code ucfoutu qui me servira certainement et pour ton aide à toi aussi MPi

Désolé du dérangement...

PS: Ucfoutu, pour le redimensionnement du form, tu n'as plus rien dis... ?
0
ucfoutu
Messages postés
18038
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
235
27 févr. 2013 à 22:10
Ton PS :
Parce que je n'ai plus rien à ajouter au code que je t'ai montré (et qui fonctionne parfaitement) pardi !


________________________
Réponse exacte ? => "REPONSE ACCEPTEE" facilitera les recherches.
Pas d'aide en ligne installée ? => ne comptez pas sur moi pour simplement répéter son contenu. Je n'interviendrai que si nécessité de la compléter.
0