Bonsoir,
A la fin d'un code produisant une variable string, je voudrais la transfromer en fichier .txt.
J'ai noté quelques indications de l'aide VBA:
La syntaxe de la méthode Write comprend les éléments suivants :
object.Write(string)
object Correspond toujours au nom d'un objet TextStream.
string Le texte à écrire dans le fichier.
L 'objet TextStream est remplacé par un espace réservé de variable
représentant l'objet TextStream renvoyé par l'objet FileSystemObject.
Dans le code [donné comme exemple] suivant, a correspond à l'objet TextStream renvoyé par la méthode CreateTextFile sur l'objet FileSystem.
Je crois avoir suivi ces indications dans le bout de code suivant:
Cependant j'ai le message d'erreur à propos de la ligne 3: "Argument ou appel de procédure incorrect".
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Set fich_texte = CreateObject("Scripting.FileSystemObject") Set mon_txt = fich_texte.CreateTextFile("e:\fichiertGED.txt", True) mon_txt.Write (mes_gedcoms) mon_txt.Close
Précisions: fich_texte et mon_txt sont déclarées comme objets. Selon l'aide de VBA on peut initialiser (set variable = ...) une variable objet avec à peu près n'importe quel objet. J'ai choisi 2 des WorkSheets de mon classeur, c'est peut-être l'origine de l'erreur ?
Je me réfère à cette note s.v. "objet, type de variable": "Une variable déclarée comme Object est suffisamment flexible pour contenir une référence à n'importe quel type d'objet, mais la liaison à l'objet désigné par la variable est toujours tardif (liaison au moment de l'exécution). Pour obtenir une liaison précoce (liaison au moment de la compilation), attribuez la référence d'objet à une variable déclarée avec un nom de classe spécifique."
J'avoue que j'ignore cette distinction sur la liaison et la notion de classe.
Merci de vos éclaircisssements.
Cordialement
Pierre








Répondre avec citation
Partager