Exportation en ASCII de champs formatés sur EXCEL

Le
alexswz
Bonjour,
est ce que quelqu'un aurait déjà fait une macro sous excel permettant
d'exporter le contenu d'un feuillet dans un fichier texte (ascii).
Il faut pouvoir formatter les champs (remplir avec des zéro non significatif
les chiffres et des blancs pour le texte.
Merci beaucoup pour toute aide.
Alexandre
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
Daniel.C
Le #5232241
Bonjour.
La macro suivante ecrit un fichier texte à partir des 5 premières colonnes
d'une feuille. Les champs sont complétés à 15 caractères.
Essaie :

Sub test()
Dim c As Range, col As Integer, Enrgt As String
Open "e:donneesdanielessai.txt" For Output As #1 ' à modifier
For Each c In Range("A1", Range("A65536").End(xlUp))
Enrgt = ""
For col = 0 To 5
If IsNumeric(c.Offset(, col)) Then
Enrgt = Enrgt & Application.Rept("0", 15 - Len(c.Offset(,
col).Text)) & c.Offset(, col).Text & ";"
Else
Enrgt = Enrgt & Application.Rept(" ", 15 - Len(c.Offset(,
col).Text)) & c.Offset(, col).Text & ";"
End If
Next col
Print #1, Left(Enrgt, Len(Enrgt) - 1)
Next
Close #1
End Sub

Cordialement.
Daniel

"alexswz" news:
Bonjour,
est ce que quelqu'un aurait déjà fait une macro sous excel permettant
d'exporter le contenu d'un feuillet dans un fichier texte (ascii).
Il faut pouvoir formatter les champs (remplir avec des zéro non
significatif
les chiffres et des blancs pour le texte.
Merci beaucoup pour toute aide.
Alexandre


alexswz
Le #5231831
Super,
merci Daniel je viens de tester cela fonctionne très bien!
Il me reste plus qu'a utiliser un onglet pour paramétrer la longueur de
chaque champ et le tour est joué...



Bonjour.
La macro suivante ecrit un fichier texte à partir des 5 premières colonnes
d'une feuille. Les champs sont complétés à 15 caractères.
Essaie :

Sub test()
Dim c As Range, col As Integer, Enrgt As String
Open "e:donneesdanielessai.txt" For Output As #1 ' à modifier
For Each c In Range("A1", Range("A65536").End(xlUp))
Enrgt = ""
For col = 0 To 5
If IsNumeric(c.Offset(, col)) Then
Enrgt = Enrgt & Application.Rept("0", 15 - Len(c.Offset(,
col).Text)) & c.Offset(, col).Text & ";"
Else
Enrgt = Enrgt & Application.Rept(" ", 15 - Len(c.Offset(,
col).Text)) & c.Offset(, col).Text & ";"
End If
Next col
Print #1, Left(Enrgt, Len(Enrgt) - 1)
Next
Close #1
End Sub

Cordialement.
Daniel

"alexswz" news:
Bonjour,
est ce que quelqu'un aurait déjà fait une macro sous excel permettant
d'exporter le contenu d'un feuillet dans un fichier texte (ascii).
Il faut pouvoir formatter les champs (remplir avec des zéro non
significatif
les chiffres et des blancs pour le texte.
Merci beaucoup pour toute aide.
Alexandre







Publicité
Poster une réponse
Anonyme