Bonjour,
J'utilise une macro "Changement_EOL_File" qui convertit toutes les sauts de ligne d'un fichier texte qui a précédemment était généra par la macro "Manipule_Datas" ==> le tout est dans le fichier excel "exemple_pour_aide.xlsm"
Les macros fonctionnent "parfaitement" mais j'ai un phénomène étrange qui se produit lors de la conversion de mes "fin de lignes". Je dois passer d'un format windows "vbCrLf" vers un format Unix "vbLf"
Lors de la conversion, dans mon fichier texte de retour, j'ai des lignes qui sont générées en doublon à la fin et qui conservent le format Windows contrairement aux premières lignes qui sont bonnes. ==> fichier "Pabx04_22_retours_en-utilisant-Changement_EOL_File.txt"
Si j'utilise la macro "Manipule_Datas" sans appeler à la fin de celle-ci la macro "Changement_EOL_File", mon fichier de retour contient exactement le même nombre de lignes que mon onglet "Retours" qui a été généré. ==> fichier "Pabx04_22_retours_sans-utiliser-Changement_EOL_File.txt"
J'ai l'impression que c'est au moment d'utiliser la fonction Put que le problème se produit mais je ne vois pas comment faire autrement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Sub Changement_EOL_File(Fichier As String) Dim FileLength As Long Dim iFile As Integer Dim strTemp As String iFile = FreeFile Open Fichier For Binary As #iFile FileLength = LOF(iFile) strTemp = String(FileLength, Chr(0)) Get #iFile, 1, strTemp strTemp = Replace(strTemp, vbCrLf, vbLf) Put #iFile, 1, strTemp Close #iFile End Sub
Si quelqu'un a une idée, je suis preneur.
Manu,
Partager