Salut à tous
Le problème n'est pas si simple et, sans avoir testé la solution de Thierry, je pense que celle-ci risque de renvoyer des erreurs, puisqu'alors les séquences CRLF ne seront plus reconnues comme telles pour insérer les différentes lignes du tableau.
Voici une solution plus simplement écrite, qui fait tout en une seule opération de lecture, supprimant les boucles et le laborieux Split, qu'on peut très souvent remplacer avantageusement par un simple Replace.
Pour cette démo l'ancien fichier texte est simplement écrasé pour être remplacé par sa version "corrigée" ainsi importable directement par Excel.
Option Explicit
'Ti
Private Sub LitFichier(ByVal Chemin$, Texte$)
Dim hFile%
hFile = FreeFile
Open Chemin For Binary Access Read As #hFile
Texte = String(LOF(hFile), " ")
Get #hFile, , Texte
Close hFile
End Sub
Private Sub EcritFichier(ByVal Chemin$, Texte$)
Dim hFile%
hFile = FreeFile
Open Chemin For Binary Access Write As #hFile
Put #hFile, , Texte
Close hFile
End Sub
Sub RemplaceTexte()
Dim Chemin, Texte$
On Error GoTo erreur
Chemin = Application.GetOpenFilename("Fichier texte (*.txt), *.txt")
If Chemin = False Then Exit Sub
LitFichier Chemin, Texte
Texte = Replace(Texte, vbLf, "")
Texte = Replace(Texte, vbCr, vbCrLf)
Kill Chemin
EcritFichier Chemin, Texte
Exit Sub
erreur:
MsgBox "Erreur"
End Sub