Indicer des fichiers Texte dans VBA

Signaler
Messages postés
1
Date d'inscription
vendredi 12 juin 2009
Statut
Membre
Dernière intervention
12 juin 2009
-
Messages postés
1566
Date d'inscription
mardi 26 décembre 2000
Statut
Membre
Dernière intervention
5 avril 2013
-
Bonjour,
J'ai une procédure unique VBA (version 6.3 sous Microsoft Excel 2000 sur PC) qui crée une multitude de fichiers texte (40 par exemple, mais il peut y en avoir plus).
Je m'en sors pour l'instant péniblement en écrivant :

Set fs2 = CreateObject("Scripting.FileSystemObject")

40 lignes pour définir les fichiers :
    Set sortie1 = fs2.CreateTextFile("C:\Fichier1.txt", True)   
    Set sortie2 = fs2.CreateTextFile("C:\Fichier2.txt", True)
    Set sortie3 = fs2.CreateTextFile("C:\Fichier3.txt", True)
    ------- ------- ------- -------
    Set sortie40 = fs2.CreateTextFile("C:\Fichier40.txt", True)

et ailleurs 40 instructions d'écritures disséminées dans la procédure:
    sortie1.WriteLine (Enregistrement)
    sortie2.WriteLine (Enregistrement)
    sortie3.WriteLine (Enregistrement)
    ------- ------- ------- -------
    sortie40.WriteLine (Enregistrement)

et enfin 40 instructions de fermeture :
    sortie1.close
    sortie2.close
    sortie3.close
    ------- -------
    sortie40.close

Question: Peut-on indicer sortie1, sortie2, etc... pour n'écrire qu'une instruction CreateTextFile, WriteLine et Close, par exemple en définissant des tableaux de fichiers?  Peut-on m'indiquer des pistes ? Je n'ai rien trouvé comme amorce de solution, que ce soit dans les forums ou la documentation de référence.
Merci d'avance

<?xml:namespace prefix o ns "urn:schemas-microsoft-com:office:office" /??>

1 réponse

Messages postés
1566
Date d'inscription
mardi 26 décembre 2000
Statut
Membre
Dernière intervention
5 avril 2013
6
Bonjour,

tu te sers de FSO abusivement et te plains ensuite de son manque de souplesse...

VB te permet pourtant de t'affranchir de trelles contingences (intéresse-toi à l'instruction Open de VB... elle est là pour celà et te permet de surcroit de travailler sur des chaines de craactères quer tu peux concaténer dans une boucle, pour tes fichiers...)
En d'autres termes : tu viens sur VB pour demander de l'aide qui, au bout du compte, concerne l'emploi abusif d'autre choise que VB...
FSO alourdit inutilement et tu as tort de t'écarter de VB...
Une autre fois : intéresse-toi de plus près à VB seul (pas de FSO) et à son instruction Open.