Re
Je pense qu'il y a confusion.
N'as-tu pas simplement un souci de format pour les dates ?
J'ai inhibé la partie conversion des données, qui apparemment n'est pas utile ?
A te relire.
Public Sub ConvertData()
Dim rng As Range, rng2 As Range
Dim lastCol As Long, lastRow As Long, lcol As Long
Const lRow = 5
With ActiveSheet
lastCol = .Cells(lRow, .Columns.Count).End(xlToLeft).Column
For lcol = 3 To lastCol Step 3
lastRow = .Cells(.Rows.Count, lcol).End(xlUp).Row
Set rng = .Cells(lRow, lcol).Resize(lastRow - lRow + 1)
Set rng2 = .Cells(lRow, lcol + 1).Resize(lastRow - lRow + 1)
With rng
'.TextToColumns Destination:=.Cells(lRow, lcol), _
DataType:=xlDelimited, _
FieldInfo:=Array(1, 4)
.NumberFormat = "m/d/yyyy"
End With
With rng2
'.TextToColumns Destination:=.Cells(lRow, lcol + 1), _
DataType:=xlDelimited, _
FieldInfo:=Array(1, 1), _
DecimalSeparator:="."
.NumberFormat = "#,##0.0_ ;[Red]-#,##0.0 ;"
End With
Next lcol
.Cells(lRow, 3).Resize(, lcol - 4).EntireColumn.AutoFit
End With
End Sub