Saleté de ' pour recherche

Saleté de ' pour recherche - VB/VBA/VBS - Programmation

Marsh Posté le 20-04-2005 à 11:37:48    

Bonjour, j'ai un probleme quand je veux rechercher un enregistrement avec une variable qui contient un '
 
ex: partie_where = partie_where & " nom_employeur = " & "'" & Combo_nom_employeur.Text & "'"
 
mais forcement ca donne quand il le trouve => where nom employeur = ' coucou c'est moi ' => y trouve 3 apostrophes, y plante
 
Auriez-vous une solution ??
 
Merci bcq

Reply

Marsh Posté le 20-04-2005 à 11:37:48   

Reply

Marsh Posté le 20-04-2005 à 11:43:56    

Salut,
 
le seul moyen de faire ça proprement, c'est de d'abord passer ta string par une petite fonction qui permet de remplacer les ' par des ''
Et comme je suis généreux :), voilà le code de cette fonction:

Code :
  1. Public Function FormatSQL(strValue As String) As String
  2.   FormatSQL = Replace(strValue, "'", "''" )
  3. End Function


 
Donc ensuite ton code devient:

Code :
  1. partie_where = partie_where & " nom_employeur = " & "'" & FormatSQL(Combo_nom_employeur.Text) & "'"


 
Voilà ça devrait fonctionner

Reply

Marsh Posté le 20-04-2005 à 12:21:15    

çà fonctionne, avais trouvé ailleurs aussi ..
 
Merci bcq

Reply

Marsh Posté le 20-04-2005 à 12:36:05    

steevi2307 a écrit :

Bonjour, j'ai un probleme quand je veux rechercher un enregistrement avec une variable qui contient un '
 
ex: partie_where = partie_where & " nom_employeur = " & "'" & Combo_nom_employeur.Text & "'"
 
mais forcement ca donne quand il le trouve => where nom employeur = ' coucou c'est moi ' => y trouve 3 apostrophes, y plante
 
Auriez-vous une solution ??
 
Merci bcq


C'est parce qu'il faut utiliser des double-quotes doublés :
 

partie_where = partie_where & " nom_employeur = """ & Combo_nom_employeur.Text & """"


Message édité par FlorentG le 20-04-2005 à 12:36:26
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed