[vba] protection du caractère guillemet

Résolu
0seb0 Messages postés 37 Statut Membre -  
0seb0 Messages postés 37 Statut Membre -
Bonjour,

Grâce à une subroutine vba, je voudrais créer le fichier texte a.txt suivant :

gloup
tu as dit "gloup"

Alors je fais ceci :

Set FS = CreateObject("Scripting.FileSystemObject")
Set a = FS.CreateTextFile(a.txt, True)
TmpStr = "gloup"
a.WriteLine ("gloup")
a.WriteLine ("tu as dit" + TmpStr)
a.Close

Mais ça ne donne que le fichier :

gloup
tu as dit gloup (<------sans les guillemets)

Bref... Au s'cours ! Comment faire ?! ;-)
Configuration: Windows 2000
Internet Explorer 6.0

3 réponses

  1. ShaBoo Messages postés 406 Statut Membre 50
     
    Bonjour,

    essaye ceci :

    Set FS = CreateObject("Scripting.FileSystemObject")
    Set a = FS.CreateTextFile(a.txt, True)
    TmpStr = Chr(34) & "Gloup" & Chr(34)
    a.WriteLine ("gloup")
    a.WriteLine ("tu as dit" + TmpStr)
    a.Close 
    2
  2. 0seb0 Messages postés 37 Statut Membre 16
     
    Merci à tous, ça marche !
    ---> Résolu ! :-)
    1
  3. Utilisateur anonyme
     
    Salut,
    Pour rajouter des guillemets dans ton mot, fait:
    TmpStr=chr$(34)+"gloup"+chr$(34)

    Bonne chance !
    0
    1. Utilisateur anonyme
       
      Set FS = CreateObject("Scripting.FileSystemObject")
      Set a = FS.CreateTextFile(a.txt, True)
      TmpStr = chr$(34)+"gloup"+chr$(34)
      a.WriteLine ("gloup")
      a.WriteLine ("tu as dit" + TmpStr)
      a.Close


      OU

      Set FS = CreateObject("Scripting.FileSystemObject")
      Set a = FS.CreateTextFile(a.txt, True)
      TmpStr = "gloup"
      a.WriteLine ("gloup")
      a.WriteLine ("tu as dit" + chr$(34)+TmpStr+chr$(34))
      a.Close


      Si ca ne fonctionne pas, ca veux dir que la commende Chr$() n'existe pas.
      0
      1. Utilisateur anonyme > Utilisateur anonyme
         
        Mince, il se pourait qu'il faut remplacer "+" par "&", dans mes changements.
        0