AlCapone
XLDnaute Nouveau
Bonjour à tous,
Je rencontre un petit souci de format sur l'export d'une feuille excel vers un fichier .txt via une macro.
Code ci-dessous :
Sub Fichiertxt ()
Dim fs As Object, a As Object
Dim chemin As String, Fichier As String
Dim var1 As String
Const sep As String = vbTab
Application.ScreenUpdating = False
chemin = "Z:\Partage Machin\Bidule Truc"
Fichier = "ImportFAE_" & Sheets("MOIS DE CLOTURE").Range("J2") & ".txt"
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile(chemin & "\" & Fichier, True)
With Worksheets("FICHIER IMPORT")
For x = 1 To .Cells(Rows.Count, 1).End(xlUp).Row
If .Cells(x, 14) <> 0 Or .Cells(x, 15) <> 0 Then
For Y = 1 To 15
var1 = var1 & sep & .Cells(x, Y)
Next Y
a.WriteLine Right(var1, Len(var1) - 1): var1 = vbNullString
End If
Cells(x, 10).NumberFormat = "00000000"
Next x
a.Close
End With
Set a = Nothing: Set fs = Nothing
End Sub
Cette macro fonctionne nickel, sauf le format de ma colonne "J" qui me fait sauter le "0" devant mon chiffre. J'ai essayé de mettre au format "000000000" afin de garder mon "0" mais rien du tout.
Ensuite j'ai essayé d'enregistrer ma feuille manuellement via "enregistrer sous", fichier .txt (Séparateur, tabulation), etc. Et là, ça fonctionne, il me garde les "0".
Si une âme charitable avait une petite idée, à faire partager, pour mettre le bon format via la macro ?
Vous en remerciant,
AlCapone
Je rencontre un petit souci de format sur l'export d'une feuille excel vers un fichier .txt via une macro.
Code ci-dessous :
Sub Fichiertxt ()
Dim fs As Object, a As Object
Dim chemin As String, Fichier As String
Dim var1 As String
Const sep As String = vbTab
Application.ScreenUpdating = False
chemin = "Z:\Partage Machin\Bidule Truc"
Fichier = "ImportFAE_" & Sheets("MOIS DE CLOTURE").Range("J2") & ".txt"
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile(chemin & "\" & Fichier, True)
With Worksheets("FICHIER IMPORT")
For x = 1 To .Cells(Rows.Count, 1).End(xlUp).Row
If .Cells(x, 14) <> 0 Or .Cells(x, 15) <> 0 Then
For Y = 1 To 15
var1 = var1 & sep & .Cells(x, Y)
Next Y
a.WriteLine Right(var1, Len(var1) - 1): var1 = vbNullString
End If
Cells(x, 10).NumberFormat = "00000000"
Next x
a.Close
End With
Set a = Nothing: Set fs = Nothing
End Sub
Cette macro fonctionne nickel, sauf le format de ma colonne "J" qui me fait sauter le "0" devant mon chiffre. J'ai essayé de mettre au format "000000000" afin de garder mon "0" mais rien du tout.
Ensuite j'ai essayé d'enregistrer ma feuille manuellement via "enregistrer sous", fichier .txt (Séparateur, tabulation), etc. Et là, ça fonctionne, il me garde les "0".
Si une âme charitable avait une petite idée, à faire partager, pour mettre le bon format via la macro ?
Vous en remerciant,
AlCapone