Re : Création d'une Macro Import/Mise En Forme / Tri
Sub LargeFileImport_v2()
'Bernie Detrick's code for opening vary large text files in Excel
'Dimension Variables
Dim ResultStr As String
Dim FileName As String
Dim FileNum As Integer
Dim Counter As Double
On Error GoTo errorHandler1
  'Ask User for File's Name
  FileName = Application.GetOpenFilename
  'Check for no entry
  If FileName = "" Then End
  'Get Next Available File Handle Number
  FileNum = FreeFile()
  'Open Text File For Input
  Open FileName For Input As #FileNum
  'Turn Screen Updating Off
  Application.ScreenUpdating = False
  'Create A New WorkBook With One Worksheet In It
 Sheets("reception fichier").Range("b3").Select
  'Set The Counter to 1
  Counter = 1
  'Loop Until the End Of File Is Reached
  Do While Seek(FileNum) <= LOF(FileNum)
    'Display Importing Row Number On Status Bar
    Application.StatusBar = "Importing Row " & Counter & _
                            " of text file " & FileName
    'Store One Line Of Text From File To Variable
    Line Input #FileNum, ResultStr
    'Store Variable Data Into Active Cell
    If Left(ResultStr, 1) = "=" Then
      ActiveCell.Value = "'" & ResultStr
    Else
      ActiveCell.Value = ResultStr
    End If
    If ActiveCell.Row = 65536 Then
      'If On The Last Row Then Add A New Sheet
      ActiveWorkbook.Sheets.add
    Else
      'If Not The Last Row Then Go One Cell Down
      ActiveCell.Offset(1, 0).Select
    End If
    'Increment the Counter By 1
    Counter = Counter + 1
  'Start Again At Top Of 'Do While' Statement
  Loop
  'Close The Open Text File
  Close
  'Remove Message From Status Bar
  Range("B3").Select
    Range(Selection, Selection.End(xlDown)).Select
   
    Selection.TextToColumns Destination:=Range("B3"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=True, Comma:=True, Space:=False, Other:=False, FieldInfo:= _
        Array(Array(1, 4), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), Array(7 _
        , 1)), TrailingMinusNumbers:=True
        
    Range("H3").Select
   Range(Selection, Selection.End(xlDown)).Select
    Selection.Replace What:=".", Replacement:=",", LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
    
    Columns("H:H").Select
    Selection.TextToColumns Destination:=Range("H1"), DataType:=xlDelimited, _
        TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=True, _
        Semicolon:=True, Comma:=False, Space:=False, Other:=False, FieldInfo _
        :=Array(1, 1), TrailingMinusNumbers:=True
        
        Application.ScreenUpdating = True
        
errorHandler1:
        
End Sub