METTRE UNE DOUBLE QUOTE QUAND IL Y A QU'UNE QUOTE!!!

Signaler
Messages postés
831
Date d'inscription
samedi 15 mai 1999
Statut
Modérateur
Dernière intervention
18 juillet 2009
-
Messages postés
4172
Date d'inscription
mercredi 30 juillet 2003
Statut
Membre
Dernière intervention
9 juin 2006
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/23546-mettre-une-double-quote-quand-il-y-a-qu-une-quote

Messages postés
4172
Date d'inscription
mercredi 30 juillet 2003
Statut
Membre
Dernière intervention
9 juin 2006
27
Ouais !! Ben vive le Replace de Nix !! D'ailleur au passage, moi je mettrais plutot Replace$(...)
Messages postés
337
Date d'inscription
jeudi 19 décembre 2002
Statut
Membre
Dernière intervention
15 avril 2006

de plus ca bug si on met des espace au debut de l'argument avec un quote vers la fin (trim enleve les esapce a gauche et a droite)

pour VB5, avec test en byval, voila plus rapide :

i = InStr(1, test, "'")
While i
Mid(test, i, 1) = """"
i = InStr(i, test, "'")
Wend
replquot=test

@+
Messages postés
17288
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
70
d'accord avec Nix

pas tout a fait avec ta boucle...

1 - pourquoi declarer i en Static ?
2 - que fait b ?
3 - pourquoi ne pas restituer toute la chaine ?
en clais, tu fais une boucle jusqu'à len ( Trim ( test ))
donc, tu n'analyse pas les n derniers espaces, qui disparaissent !

autre chose, cote optimisation (et sans utilise Replace)
tu pourrais declarer ton parametre test en ByRef...
tu devrais eviter de recalculer Mid(test, i, 1) (utilises donc b !! )

et utilise Mid$ a la place de Mid

voila voila...
Messages postés
831
Date d'inscription
samedi 15 mai 1999
Statut
Modérateur
Dernière intervention
18 juillet 2009

Pas """" mais " ' ' " (retirer les espace)
En traduction textuelle ça donne
Guillement Apostrophe Apostrophe Guillement
Afficher les 6 commentaires