(VB) remplacer des guillemets dans une string [Résolu/Fermé]

Signaler
-
 VB6 -
Bonjour !
Je dois supprimer les guillemets dans une chaîne de caractères. J'ai fait comme ça :
laChaine = Replace(laChaine , """, "")

Mais ça fait une erreur de syntaxe.
Comment faire ?
Merci !

8 réponses

Messages postés
488
Date d'inscription
vendredi 16 avril 2004
Statut
Membre
Dernière intervention
15 mars 2009
156
les "" servent à délimiter une chaine de caractère et pas à afficher des guillemets. Pour l'afficher ou le comparer il faut l'exprimer sous forme de code ascii. Le code ascii du guillemet est 34
asc() et chr() permettent d'atteindre le code ascii d'un caractère
print chr(34) affiche un guillemet.
asc(a) retourne le code ascii de a

cordialement
13
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

CCM 75475 internautes nous ont dit merci ce mois-ci

la fonction chr() demande un entier long comme paramètre. Si ta variable A0 n'est pas définie, elle prendra 0 comme valeur. S'il est question d'une valeur hexadécimale, if faut le "mentioner" à VB, avec le préfixe &H...

Str = Replace(machaine, Chr(&HA0), "")
La syntaxe exacte est :

laChaine = Replace(laChaine , """, "")

Rem : ce n'est pas 3 mais 4 guillemets qu'il faut.

A+.
Cool , merci , ça marche bien !
Il fallait le savoir , j'ai mis deux jours à chercher comment supprimer de guillement double cote dans une chaine de caractère sous VB6
Oh, petite boullette :
code exacte :

laChaine = Replace(laChaine, """", "")

A+.
Slyer26
Bonjour,

Merci pour la réponse.
J'avais résolu mon Pb mais tu as raison , je m'étais trompé de base.
Ultra edit me donné "A0" que j'ai retranscrit tel quel do'ou mon erreur.
La bonne syntaxe était donc Str = replace (machaine, chr(160),"")
Soit A0 en decimal.
Désolé de ne pas avoir percuté plus tôt ..
Bonjour,
j'ai un problème de conversion de guillemets en code ascii:
je veux afficher une chaine de caractère de cette forme:
chaine à obtenir exactement : (compute commande= define TpItem() "NomDuProduit" !enddefine.)

le nom du produit est stcké dans une variable V_Product(i). le problème ce que je n'arrive pas afficher les guillements en tant de chaine de caractère autour de ma variable V_Product(i). voici ce que j'ai fait:

TpCom = "compute command=" & Chr$(34) & define !TpItem ()"& Chr$(34)& V_Product(i) & Chr(34) & "!enddefine. & Chr(34)

le deux Chr$(34) au milieu sont lu comme de caratère et pas comme des instruction VB et l'inverse pour les guillements.
Avez-vous une idée comment faire?
Merci
Ahmed
Bonjour,

voici la bonne syntaxe

tpcom = "compute command=define !TpItem ()" & Chr$(34) & V_Product(i) & Chr(34) & "!enddefine."
Je trouve aussi t un mauvais super programmeur
Bonjour,

j'ai un soucis pour remplacer un caractére dans une chaine.
Mon caractère ce voit comme un blanc mais il s'agit du code BOM (pour l'anglais Byte Order Mark) Chr(A0).
mais lorsque j'essaie
Str = replace (machaine,chr(A0),"")
il ne se passe rien !!!