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
Partager