Creer des fichiers txt automatiquement ?

Creer des fichiers txt automatiquement ? - Logiciels - Windows & Software

Marsh Posté le 26-06-2005 à 00:44:53    

Voila en fait je suis amené a faire plusieurs fichiers texte qui reprennent la meme base (avec le bloc note windows basique).
En gros la structure du document est la meme a chaque fois et il y a juste qq mots qui changent.
 
Et je voudrais savoir si il était possible d'automatiser la création de ces fichiers. Au lieu de copier tout le document et de le coller dans un nouveau puis de faire les changements, y a t'il une solution pour que cela se fasse tout seul.
 
Je rentre juste les modifications et elles s'integrent dans le document.
 
J'ai cherché sur le forum mais je n'ai rien trouvé.

Reply

Marsh Posté le 26-06-2005 à 00:44:53   

Reply

Marsh Posté le 26-06-2005 à 00:55:05    

Reply

Marsh Posté le 26-06-2005 à 02:56:08    

J'ai googlé "VBS" je pense donc que tu veux parler de script.
J'ai trouvé un tutorial pour apprendre donc je vais me plonger dedans.
Merci de la réponse :D
 
EDIT :  
Dans le tutorial (dispo ici) je vois que le vbs se met dans du code html :o
Qqun pour éclairer ma lanterne sur vbs ?
 
RE EDIT :
Ou alors peut etre que ton idée c'est de mettre des formulaires dans des pages html, formulaires qui contiendront les phrases changeantes de mon document. Et apres le fichier sera créer en combinant les 2 par le script.
J'y connait rien en vbs donc je fais qq suppositions


Message édité par scaven13 le 26-06-2005 à 03:05:17
Reply

Marsh Posté le 26-06-2005 à 10:25:31    

Il faut que tu utilises Windows Scripting Host (WSH) dont les deux langages sont VBS et JS (il est bien sûr possible d'utiliser d'autres langages de scripts, tels que PERL, PHP, ...).
 
Tu trouveras les références du langage chez Microsoft sur :
 
http://msdn.microsoft.com/scripting/
 
Ensuite pour revenir à ton problème, ton projet aura je pense trois composantes.
 
Une variable de type chaîne, des boîtes de dialogues pour saisir les différences et l'objet File System Object (FSO) pour enregistrer le fichier.
 
Pour la première composante c'est simple en VBS les variables sont déclarées implicitement et la chaîne est entre des guillemets doubles. La concaténation se fait avec le symboles "et" commercial (& ) :
 

sMaChaine = "Ceci est la chaine de [nom] qui est né le [date]"


 
Ensuite une box d'entrée pour saisir les données. La je vais demander le nom etla date. Puis substituer à ma chaîne ce que l'uilisateur a rentré.
 

sMaChaine = "Ceci est la chaine de [nom] qui est né le [date]"
sNom = InputBox("Quel est ton nom ?" )
sDate = InputBox("Quel est ta date de naissance ?" )
sMyChaine = Replace(sMaChaine, "[nom]", sNom)
sMaChaine = Replace(sMaChaine, "[date]", sDate)


 
En dernier lieu il te faut enregistrer le fichier sur le disque :
 

' Défini la chaîne de caractères :
sMaChaine = "Ceci est la chaine de [nom] qui est né le [date]"
 
' Collecte les données
sNom = InputBox("Quel est ton nom ?" )
sDate = InputBox("Quel est ta date de naissance ?" )
 
' Effectue le remplacement dans la chaîne
sMaChaine = Replace(sMaChaine, "[nom]", sNom)
sMaChaine = Replace(sMaChaine, "[date]", sDate)
 
' Créé un objet FSO
Set oFS = CreateObject("Scripting.FileSystemObject" )
 
' Défini le chemin d'accès et le nom du fichier
sFileName = oFS.BuildPath(Wscript.ScriptFullName & "\..", "Fichier_de_" & sNom & ".txt" )  
sFileName = oFS.GetAbsolutePathName(sFileName)
 
' Ouvre un fichier texte en écriture
Set oTS = oFS.OpenTextFile(sFileName, 2, True)  
 
' Ecrit une ligne
oTS.WriteLine sMaChaine  
 
' Ferme le fichier
oTS.Close
Set oTS = Nothing
Set oFS = Nothing


 
Voila il suffit de copier-coller dans un fichier avec l'extension *.vbs et de le lancer.
 
Après il est clair que si tes besoins côté présentation sont plus poussés tu peux créer un forumlaire en HTML et intégrer un script qui ira lire les champs dans IE.


Message édité par Requin le 26-06-2005 à 10:31:23
Reply

Marsh Posté le 26-06-2005 à 15:18:59    

Merci beaucoup pour toutes ces précisions.
Je pense que je vais en avoir besion :D

Reply

Marsh Posté le 27-06-2005 à 10:58:37    

euh si c'est juste pour mettre une liste de valeurs dans des documents, regarde si le publipostage de word suffirait pas :)

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed