ya Ngoungou
Messages postés2Date d'inscriptionvendredi 8 juin 2007StatutMembreDernière intervention13 septembre 2007
-
13 sept. 2007 à 17:26
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
14 sept. 2007 à 01:49
Bonjour à tous,
Pouvez-vous m'aider à trouver l'erreurs qui se trouve dans le code ci-dessous?
Je n'arrive pas à faire des recherches avec des noms s'écrivant avec apostrophe sur le formulaire de mon application. Il apparait : " Les arguments sont de type incorrect, en dehors des limites autorisées ou en conflit les uns avec les autres". Voici le code:
Private Sub cmdRech_Click()<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>
Dim Condition As String
If txtService.Text <> "" Then
If Condition = "" Then
Condition = "Service like '%" & CStr(Trim(txtService.Text)) & "%'"
Else
Condition = Condition & " And Service like '%" & Trim(txtService.Text) & "%'"
End If
End If
If Condition <> "" Then
DataEnvir.rsDemandeurs.Filter = Condition
Else
MsgBox "Aucun critère de recherche précisé", vbOKOnly + vbInformation, "ATTENTION"
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 13 sept. 2007 à 19:12
Salut
En effet, les apostrophes dans les textes se confondent avec les apostrophes utilisées dans la syntaxe SQL.
Problème aussi je crois avec les les guillemets " ou les \ ou /
La solution consiste à doubler leur nombre :
Dim sTemp As String
sTemp = Trim(txtService.Text)
sTemp = Replace(sTemp, "'", "''")
...
Condition = "Service like '%" & sTemp & "%'"
PS1 : Ton CStr ne sert à rien puisque Trim est déjà une fonction dédiée aux chaines
PS2 : Tu aurais trouver cette réponse en cherchant "sql apostrophe" parmi les questions du forum
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)