Se connecter / S'enregistrer
Votre question

créer un fichier texte par VBA

Tags :
  • Microsoft Excel
  • Programmation
Dernière réponse : dans Programmation
12 Juillet 2005 17:13:28

Slt à tous,

Je souhaite sauvegarder une feuille excel en *.txt par macro...

J'ai la macro suivant reliée à un boutton:
Dim Temp As String
Temp = "C:\FWD.txt"
ActiveWorkbook.SaveAs Filename:=Temp, FileFormat:=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False

Mais lorsque j'ouvre le fichier texte, c'est illisible...

Kinkun a une idée?

Sauc

Autres pages sur : creer fichier texte vba

13 Juillet 2005 08:48:48

c'ets totalement logique, tu fais un activeworkbook.save, donc par conséquent tu enregistres tes données en tant que classeur Excel, ce n'est pas parceque tu lui donnes une extension .txt qu'automatiquement il te le convertir en txt....

Tu as deux solutions, la facile mais pas trop belle pour un programmeur :
tu te créés a la main un fichier txt et tu l'ouvres via ta macro, Excel va detecter que c'ets un fichier txt et ne le convertira pas en classeur excel, tu fais ce que tu as a faire et tu le ré-enregistres, Excel te demandera si tu veux garder le format actuel ou le convertir en TXT, tu trouves la bonne option a ajouter et hop ca te garde ton fichier en TXT.

La seconde solution est d'inclure la bibliotheque de gestion de fichiers ... Qui te permettra de gerer par des input et output la création de ton fichier, plus lourd a programmer ca te permet tout de meme d'etre plus libre au niveau de la prog...
la bibliotheque doit etre un truc comme scrrun.dll et tu dois créer un FileSystemObject (pour les details faudrait que je revois un de mes codes j'ai pas utilisé cette méthode depuis 1 an environ etant donné que je travaille soit par DB soit par fichiers XML)

:) 

++
Nico.
27 Juillet 2005 21:55:35

Salut, j'espère que tu n'a pas exécuté à la lettre les conseils non avisés de je ne sais plus quel olibrius pour créer un fichier texte.

Dans ton code remplace simplement
FileFormat=xlNormal
par
FileFormat=xlTextWindows
et c'est tout !
Tom's guide dans le monde
  • Allemagne
  • Italie
  • Irlande
  • Royaume Uni
  • Etats Unis
Suivre Tom's Guide
Inscrivez-vous à la Newsletter
  • ajouter à twitter
  • ajouter à facebook
  • ajouter un flux RSS