1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
Option Explicit
Sub OuvreTxtSousExcel()
Dim Source As String, Filtre As String
Dim NumFichier As Integer
Dim TabLigne() As String, TabCol() As String
Dim Recup As String
Dim Cmpt1 As Long, Cmpt2 As Long
Dim Classeur As Workbook
' Ouvrir une boite de dialogue pour sélectionner le fichier .txt
Filtre = "Fichiers texte (*.txt),*.txt"
Source = Application.GetOpenFilename(Filtre, Title:="Sélection du fichier")
Application.ScreenUpdating = False
'Convertir le fichier texte en classeur Excel
NumFichier = FreeFile
Open Source For Binary Access Read As #NumFichier
Recup = String(LOF(NumFichier), " ")
Get #NumFichier, , Recup
Close #NumFichier
Set Classeur = Workbooks.Add
Classeur.Activate
With Classeur.Worksheets(1).Cells(1, 1)
TabLigne = Split(Recup, vbCrLf)
For Cmpt1 = 0 To UBound(TabLigne)
TabCol = Split(TabLigne(Cmpt1), ",")
For Cmpt2 = 0 To UBound(TabCol)
.Offset(Cmpt1, Cmpt2).Value = TabCol(Cmpt2)
Next Cmpt2
Next Cmpt1
End With
Set Classeur = Nothing
Application.ScreenUpdating = True
End Sub |
Partager