Pas de solution pour ma macro ??

Le
Eric C
Bonjour et meilleurs voeux à tous

J'ai enegistré une macro en excel à l'aide de l'enregistreur de macros.

A partir d'un fichier qui contient du texte dans les cellules de ma
colonne A, j'enregistre sous en choisissant le type de fichier .txt
(séparateur tab). La macro me crée un fichier .txt mais dès que je
l'ouvre dans le bloc notes, chaque ligne commence et se termine par "

Lorsque j'effectue le meme enregistrement en manuel sans la macro, le
texte est bien enregistré sans " devant ni derrière
Une idée ??

Merci
Eric

Pour info, voici le texte de l'enregistrement dans la macro :
ActiveWorkbook.SaveAs Filename:= _
"C:cheminomfichier.txt", FileFormat:=xlText, _
CreateBackup:úlse
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Jean-Claude
Le #22987281
"Eric C" 4d236714$0$14260$
Bonjour et meilleurs voeux à tous...

J'ai enegistré une macro en excel à l'aide de l'enregistreur de macros.

A partir d'un fichier qui contient du texte dans les cellules de ma
colonne A, j'enregistre sous... en choisissant le type de fichier .txt
(séparateur tab). La macro me crée un fichier .txt mais dès que je l'ouvre
dans le bloc notes, chaque ligne commence et se termine par "

Lorsque j'effectue le meme enregistrement en manuel sans la macro, le
texte est bien enregistré sans " devant ni derrière...
Une idée ??

Merci
Eric

Pour info, voici le texte de l'enregistrement dans la macro :
ActiveWorkbook.SaveAs Filename:= _
"C:cheminnomfichier.txt", FileFormat:=xlText, _
CreateBackup:úlse



Bonjour,
pour ma part sous 2003, je n'ai pas de guillemets, ni manuellement, ni par
macro (qui est bien la même que la vôtre), que les cellules contiennent du
texte ou des chiffres.
Jean-Claude
isabelle
Le #22987351
bonjour Eric,

pour ma part sous 2002, je n'ai pas de guillemets non plus peu importe la méthode.
peut tu montrer ton fichier excel avant transformation ?

isabelle


Le 2011-01-04 13:29, Eric C a écrit :
Bonjour et meilleurs voeux à tous...

J'ai enegistré une macro en excel à l'aide de l'enregistreur de macros.

A partir d'un fichier qui contient du texte dans les cellules de ma
colonne A, j'enregistre sous... en choisissant le type de fichier .txt
(séparateur tab). La macro me crée un fichier .txt mais dès que je
l'ouvre dans le bloc notes, chaque ligne commence et se termine par "

Lorsque j'effectue le meme enregistrement en manuel sans la macro, le
texte est bien enregistré sans " devant ni derrière...
Une idée ??

Merci
Eric

Pour info, voici le texte de l'enregistrement dans la macro :
ActiveWorkbook.SaveAs Filename:= _
"C:cheminnomfichier.txt", FileFormat:=xlText, _
CreateBackup:úlse
Eric C
Le #22991001
Isabelle,

Merci pour l'attention.

Je suis également sous 2002.
Voici le lien du fichier xls et des macros utilisées pour les tests.
Le fichier classeur1.txt est obtenu avec la macro1 (enregistrement dans
la macro)
Le fichier creation liste.txt est obtenu avec la macro creation liste
(enregistrement manuel sous format texte : separateur tabulation)

http://cjoint.com/?0bfrdJSXqVB

C'est pas très important, j'enregistre en manuel, mais j'aime bien de
comprendre...

Merci !
Eric


Le 4/01/2011 20:08, isabelle a écrit :
bonjour Eric,

pour ma part sous 2002, je n'ai pas de guillemets non plus peu importe
la méthode.
peut tu montrer ton fichier excel avant transformation ?

isabelle


Le 2011-01-04 13:29, Eric C a écrit :
Bonjour et meilleurs voeux à tous...

J'ai enegistré une macro en excel à l'aide de l'enregistreur de macros.

A partir d'un fichier qui contient du texte dans les cellules de ma
colonne A, j'enregistre sous... en choisissant le type de fichier .txt
(séparateur tab). La macro me crée un fichier .txt mais dès que je
l'ouvre dans le bloc notes, chaque ligne commence et se termine par "

Lorsque j'effectue le meme enregistrement en manuel sans la macro, le
texte est bien enregistré sans " devant ni derrière...
Une idée ??

Merci
Eric

Pour info, voici le texte de l'enregistrement dans la macro :
ActiveWorkbook.SaveAs Filename:= _
"C:cheminnomfichier.txt", FileFormat:=xlText, _
CreateBackup:úlse
isabelle
Le #22992771
bonjour Eric,

on dirait bien que dès qu'il y a un espace ou une virgule, les guillemets s'ajoutent.
une autre solution serait d'utiliser FileSystemObject,
pour cette exemple la sélection est transférée dans le fichier txt "c:Classeur4.txt" non existant.
'il faut ajouter la référence : Microsoft Scripting Runtime.

Sub ÉcrireNouveauFichierTexte()
Dim oFSO As Scripting.FileSystemObject
Dim oFl As Scripting.File
Dim oTxt As Scripting.TextStream
Dim i As Integer
'Instanciation du FSO
Set FSys = CreateObject("Scripting.FileSystemObject")
Set oTxt = FSys.CreateTextFile("c:Classeur4.txt")
With oTxt 'Pour écrire dans le fichier texte
For i = 1 To Selection(Selection.Count).Row
.WriteLine Selection(i)
Next i
End With
End Sub

isabelle

Le 2011-01-05 11:09, Eric C a écrit :
Isabelle,

Merci pour l'attention.

Je suis également sous 2002.
Voici le lien du fichier xls et des macros utilisées pour les tests.
Le fichier classeur1.txt est obtenu avec la macro1 (enregistrement dans
la macro)
Le fichier creation liste.txt est obtenu avec la macro creation liste
(enregistrement manuel sous format texte : separateur tabulation)

http://cjoint.com/?0bfrdJSXqVB

C'est pas très important, j'enregistre en manuel, mais j'aime bien de
comprendre...

Merci !
Eric


Le 4/01/2011 20:08, isabelle a écrit :
bonjour Eric,

pour ma part sous 2002, je n'ai pas de guillemets non plus peu importe
la méthode.
peut tu montrer ton fichier excel avant transformation ?

isabelle


Le 2011-01-04 13:29, Eric C a écrit :
Bonjour et meilleurs voeux à tous...

J'ai enegistré une macro en excel à l'aide de l'enregistreur de macros.

A partir d'un fichier qui contient du texte dans les cellules de ma
colonne A, j'enregistre sous... en choisissant le type de fichier .txt
(séparateur tab). La macro me crée un fichier .txt mais dès que je
l'ouvre dans le bloc notes, chaque ligne commence et se termine par "

Lorsque j'effectue le meme enregistrement en manuel sans la macro, le
texte est bien enregistré sans " devant ni derrière...
Une idée ??

Merci
Eric

Pour info, voici le texte de l'enregistrement dans la macro :
ActiveWorkbook.SaveAs Filename:= _
"C:cheminnomfichier.txt", FileFormat:=xlText, _
CreateBackup:úlse





Eric C
Le #22995311
Isabelle,

Merci de me donner une solution, mais cela m'a l'air très compliqué pour
ce que je veux en faire, je continue à sauver à la main...

Mais je testerai quand même ta solution FSO, et au mieux, j'aurai appris
qu'il y avait moyen d'enregistrer du texte dans un fichier .txt à partir
d'excel, un peu à la manière de GWBasic il y a quelques années.... (clin
d'oeil nostalgique...)

A bientôt
Eric


Le 5/01/2011 22:16, isabelle a écrit :
bonjour Eric,

on dirait bien que dès qu'il y a un espace ou une virgule, les
guillemets s'ajoutent.
une autre solution serait d'utiliser FileSystemObject,
pour cette exemple la sélection est transférée dans le fichier txt
"c:Classeur4.txt" non existant.
'il faut ajouter la référence : Microsoft Scripting Runtime.

Sub ÉcrireNouveauFichierTexte()
Dim oFSO As Scripting.FileSystemObject
Dim oFl As Scripting.File
Dim oTxt As Scripting.TextStream
Dim i As Integer
'Instanciation du FSO
Set FSys = CreateObject("Scripting.FileSystemObject")
Set oTxt = FSys.CreateTextFile("c:Classeur4.txt")
With oTxt 'Pour écrire dans le fichier texte
For i = 1 To Selection(Selection.Count).Row
.WriteLine Selection(i)
Next i
End With
End Sub

isabelle

Le 2011-01-05 11:09, Eric C a écrit :
Isabelle,

Merci pour l'attention.

Je suis également sous 2002.
Voici le lien du fichier xls et des macros utilisées pour les tests.
Le fichier classeur1.txt est obtenu avec la macro1 (enregistrement dans
la macro)
Le fichier creation liste.txt est obtenu avec la macro creation liste
(enregistrement manuel sous format texte : separateur tabulation)

http://cjoint.com/?0bfrdJSXqVB

C'est pas très important, j'enregistre en manuel, mais j'aime bien de
comprendre...

Merci !
Eric


Le 4/01/2011 20:08, isabelle a écrit :
bonjour Eric,

pour ma part sous 2002, je n'ai pas de guillemets non plus peu importe
la méthode.
peut tu montrer ton fichier excel avant transformation ?

isabelle


Le 2011-01-04 13:29, Eric C a écrit :
Bonjour et meilleurs voeux à tous...

J'ai enegistré une macro en excel à l'aide de l'enregistreur de macros.

A partir d'un fichier qui contient du texte dans les cellules de ma
colonne A, j'enregistre sous... en choisissant le type de fichier .txt
(séparateur tab). La macro me crée un fichier .txt mais dès que je
l'ouvre dans le bloc notes, chaque ligne commence et se termine par "

Lorsque j'effectue le meme enregistrement en manuel sans la macro, le
texte est bien enregistré sans " devant ni derrière...
Une idée ??

Merci
Eric

Pour info, voici le texte de l'enregistrement dans la macro :
ActiveWorkbook.SaveAs Filename:= _
"C:cheminnomfichier.txt", FileFormat:=xlText, _
CreateBackup:úlse





michdenis
Le #22995901
Bonjour,

As-tu essayé ceci :

Dim CheminEtNomFichier As string
CheminEtNomFichier = "c:MonFichier.txt"

ThisWorkbook.SaveAs CheminEtNomFichier, FileFormat:=xlUnicodeText



MichD
--------------------------------------------
"Eric C" a écrit dans le message de groupe de discussion : 4d236714$0$14260$

Bonjour et meilleurs voeux à tous...

J'ai enegistré une macro en excel à l'aide de l'enregistreur de macros.

A partir d'un fichier qui contient du texte dans les cellules de ma
colonne A, j'enregistre sous... en choisissant le type de fichier .txt
(séparateur tab). La macro me crée un fichier .txt mais dès que je
l'ouvre dans le bloc notes, chaque ligne commence et se termine par "

Lorsque j'effectue le meme enregistrement en manuel sans la macro, le
texte est bien enregistré sans " devant ni derrière...
Une idée ??

Merci
Eric

Pour info, voici le texte de l'enregistrement dans la macro :
ActiveWorkbook.SaveAs Filename:= _
"C:cheminnomfichier.txt", FileFormat:=xlText, _
CreateBackup:úlse
Publicité
Poster une réponse
Anonyme