larcyr
Messages postés9Date d'inscriptionvendredi 25 janvier 2008StatutMembreDernière intervention24 février 2011
-
20 oct. 2010 à 16:19
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 2015
-
21 oct. 2010 à 09:00
Bonjour,
je bloque sur un code et je n'arrive pas à m'en sortir si quelqu'un pouvais me donner un coup de main.
Merci d'avance
J'ouvre un fichier .txt qui est un masque d'impression. Dans ce fichier je recherche des champs pour les remplacer par mes variables.
dim chemin_source
dim var_SN_palette
Set MyObject = CreateObject("Scripting.FileSystemObject")
Set MyFile = MyObject.GetFile(chemin_source)
Set OpenFile = MyFile.OpenAsTextStream(1)
'Recherche de la ligne
Do While OpenFile.AtEndOfStream = False
CurrentLine = OpenFile.ReadLine
If InStr(CurrentLine, "Variable_SN") <> 0 Then OpenFile.WriteLine var_SN_Palette
If InStr(CurrentLine, "Designation") <> 0 Then OpenFile.WriteLine ""
Loop
L'erreur d'exécution s'effectue quand quand la données "trouve la données "variable_SN" sur la commande OpenFile.WriteLine var_SN_Palette avec comme message Mode d'accées au fichier incorrect.
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 20 oct. 2010 à 23:53
Salut
Si tu avais lu l'aide, tu saurais déjà pourquoi.
Tu ouvres OpenAsTextStream avec le paramètre 1 qui représente ForReading.
Si tu veux pouvoir écrire, il faudrait utiliser ForWriting (2).
Mais ne te précipite pas : On ne peut pas mitiger la lecture et l'écriture comme tu veux le faire.
Il te faut ouvrir ton fichier en lecture et en ouvrir un autre (un nouveau) en même temps pour l'écriture.
Vala
Jack, MVP VB NB : Je ne répondrai pas aux messages privés
Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)