Je souhaite modifier un fichier .dtf (fichier IBM Data Transfer) via VBA. L'ouvrir en Excel me cause des problèmes alors j'espérais lire le fichier ligne par ligne et l'exporter vers un nouveau fichier .dtf. Mais quelque chose va mal lorsque je tente de Print #1
la chaîne à la .dtfEXCEL VBA lecture/écriture. Fichier dft (IBM Data Tranfer)
Sub test()
Dim TemplateFilePath As String
TemplateFilePath = "C:\TemplateFile.dtf"
Call CreateDataTranderFile(TemplateFilePath)
End Sub
Public Sub CreateDataTranderFile(TemplateFilePath As String)
Dim output As String
Dim OutFullPath As String
Dim Line As String
Dim FileNum As Integer
OutFullPath = "C:\tmpTranferfile.dtf"
'Read from template
FileNum = FreeFile()
Open TemplateFilePath For Input As #FileNum
While Not EOF(FileNum)
Line Input #FileNum, Line
output = output & Line
Wend
Close #FileNum
'Write .dtf
Open OutFullPath For Output As #1
Print #1, output
Close
End Sub
Avec sortie = sortie & Line vous sautez CRLF. Est-ce intentionnel? Bien que je ne crois pas que cela ait quelque chose à voir avec votre problème. Pouvez-vous vérifier quel est le codage de votre fichier d'entrée? – Storax
Je suppose que l'encodage de votre fichier d'entrée est UNICODE, non? – Storax
En effet était UNICODE. Juste appris à vérifier http://stackoverflow.com/questions/6947749/how-to-check-if-a-txt-file-is-in-ascii-or-utf-8-format-in-windows-environment – BuckTurgidson