Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1191 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  apostrophe dans recherche vba

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

apostrophe dans recherche vba

n°1353597
mimy
Posté le 25-04-2006 à 14:19:03  profilanswer
 

salut je dois faire une recherche en vba, mais certaines données de ma recherche comporte une apostrophe
Le code fonctionne mais dès que je souhaite écrire "site d'amiens" ou "site d'arras", mon programme bug à cause de cette apostrophe
voici mon code, si qq peut me venir en aide, je lui en suis très reconnaissante ! :jap:  
Private Sub Commande5_Click()
 
Dim db As Database
Dim rs As Recordset
Dim chainesql, chaine, recherche As String
 
'ouverture de la base de données
Set db = CurrentDb
'Ouverture d'une boîte message dans laquelle l'utilisateur va saisir le nom de l'étape qu'il recherche
recherche = InputBox("Saisissez le nom de l'étape ou du passage que vous recherchez : " )
chainesql = "SELECT NumEtape, NomEtape FROM Table1 WHERE Table1.NomEtape Like '*" & recherche & "*'"
'ouverture du recordset
Set rs = db.OpenRecordset(chainesql)
chaine = ""
 
'si l'utilisateur n'a saisi aucune valeur
If recherche = "" Then
    MsgBox ("vous n'avez saisi aucune valeur" )
Else
    'si l'utilisateur a saisi une mauvaise valeur / la valeur n'a pas été trouvée
    If rs.EOF = True Then
        MsgBox ("Nous n'avons trouvé aucune étape correspondant à " & recherche)
    Else
    'la valeur a été trouvée
        rs.MoveFirst
    Do While rs.EOF = False
            chaine = chaine & rs!NumEtape & " " & rs!NomEtape & vbCrLf
        rs.MoveNext
    Loop
'affichage des valeurs dans une boîte message
    MsgBox (chaine)
End If
End If
End Sub

mood
Publicité
Posté le 25-04-2006 à 14:19:03  profilanswer
 

n°1353612
4lkaline
Posté le 25-04-2006 à 14:41:04  profilanswer
 

La solution est simple,il suffit de doubler l'apostrophe. Le gestionnaire SQL comprendra qu'il s'agit du caractère apostrophe et ne ferra plus d'erreur.
Au lieu de passer comme parametre a ta requete : "Site d'Arras" il faut lui passer "Site d''Arras" et ca fonctionera.
 
tu peux utiliser la fonction Replace() pour ca!

Code :
  1. Replace(Chaine,"'","''" )


 
Bon Courage
 
Marco


Message édité par 4lkaline le 25-04-2006 à 14:41:25
n°1353705
mimy
Posté le 25-04-2006 à 16:04:15  profilanswer
 

ah yes! merci bcp bcp! ça fonctionne!

n°1353791
kiki29
Posté le 25-04-2006 à 17:26:17  profilanswer
 

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  apostrophe dans recherche vba

 

Sujets relatifs
[resolu]Recherche sensible ET insensible à la casseRecherche avec une miste déroulante PHP/MySql
recherche dévelo c++recherche d'un parametre
Recherche appli PHP de gestion de parc automobileRecherche automatisé de miniature
Recherche stagiaire développeur PHPrecherche dichotomique sur chaîne de caractères
recherche de fichiers catia[VBA ACCESS] recherche d'apostrophe dans une string [RESOLU]
Plus de sujets relatifs à : apostrophe dans recherche vba


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR