Posez votre question Signaler

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

Hélène - Dernière réponse le 28 oct. 2010 à 15:17
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 !
Lire la suite 

(VB) remplacer des guillemets dans une string »

10 réponses
Réponse
+6
moins plus
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), "")

Réponse
+4
moins plus
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
Réponse
+2
moins plus
La syntaxe exacte est :

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

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

A+.

VB6 - 28 oct. 2010 à 15:17
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
Réponse
+1
moins plus
Oh, petite boullette :
code exacte :

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

A+.
Slyer26

Réponse
+1
moins plus
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

amigo - 14 févr. 2008 à 22:34
Bonjour,

voici la bonne syntaxe

tpcom = "compute command=define !TpItem ()" & Chr$(34) & V_Product(i) & Chr(34) & "!enddefine."
Réponse
+1
moins plus
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 !!!

Réponse
+0
moins plus
Je trouve aussi t un mauvais super programmeur

Réponse
+0
moins plus
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 ..

Ce document intitulé « (VB) remplacer des guillemets dans une string » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?