Fonction write, writeline
Résolu
nchristedem
Messages postés
24
Statut
Membre
-
nchristedem Messages postés 24 Statut Membre -
nchristedem Messages postés 24 Statut Membre -
Bonjour,
J'écris un code VBA (Excel) et je voudrais enregistrer mes données dans un txt. Je souhaite que les valeurs des variables Tr, Tc, Tx soient sur la même ligne mais séparée par des points-virgules (;). Le curseur doit aller à la ligne à la fin. Voici mon code:
Set fichier = objet.CreateTextFile("C:\Users\user\Desk... True) ' Crée le fichier d'enregistrement
entete = "Tr" + "; " + "Tc" + "; " + "Tx"+ "
fichier.WriteLine (entete) 'Ecrit l'entête
Instructions
fichier.Write (Tr)
fichier.Write (";")
fichier.Write (Tc)
fichier.Write (";")
fichier.WriteLine (Tx)
Le programme marche. Mon problème est que j'ai en réalité plus de trois variables à stocker (une vingtaine). Je serais obligé d'écrire donc vingt fois :
fichier.Write (variable)
fichier.Write (";")
Quand j'écris: fichier.WriteLine (Tr; Tc;Tx), ça ne marche pas.
N'y a-t-il pas plus simple que ce que j'avais fait?
N.B. Les variables sont des nombres (Dim As Double).
J'écris un code VBA (Excel) et je voudrais enregistrer mes données dans un txt. Je souhaite que les valeurs des variables Tr, Tc, Tx soient sur la même ligne mais séparée par des points-virgules (;). Le curseur doit aller à la ligne à la fin. Voici mon code:
Set fichier = objet.CreateTextFile("C:\Users\user\Desk... True) ' Crée le fichier d'enregistrement
entete = "Tr" + "; " + "Tc" + "; " + "Tx"+ "
fichier.WriteLine (entete) 'Ecrit l'entête
Instructions
fichier.Write (Tr)
fichier.Write (";")
fichier.Write (Tc)
fichier.Write (";")
fichier.WriteLine (Tx)
Le programme marche. Mon problème est que j'ai en réalité plus de trois variables à stocker (une vingtaine). Je serais obligé d'écrire donc vingt fois :
fichier.Write (variable)
fichier.Write (";")
Quand j'écris: fichier.WriteLine (Tr; Tc;Tx), ça ne marche pas.
N'y a-t-il pas plus simple que ce que j'avais fait?
N.B. Les variables sont des nombres (Dim As Double).
Configuration: Windows Vista Firefox 3.0.10
1 réponse
-
il faut utiliser une zone intermédiaire
champ_sortie = zone1 & ";" & zone2 & ";"
nom_fichier.writeline (champ_sortie)-
mERCI remotard. On m'avait filié ce qui suit , c'est pareil que ta proposition.
fichier.WriteLine (Format(Tre, "0.00") & "; " & Format(Tr, "0.00") & "; " & Format(Trs, "0.00")
Sauf qu'on n'a pas besoin de variable intermédiaire. En plus, je peux formater les chiffres avec deux chiffres après la virgule.
-