Bonjour
Pas de souci pour votre fichier partiel, je comprends.
Voici le code modifié pour votre nouvelle demande :
Sub test()
Dim Plage As Range, Cel As Range
Application.ScreenUpdating = False
'on est sur la feuille active
With ActiveSheet
'on définit la plage en colonne B dans laquelle la macro va agir
Set Plage = .Range("B2:B" & .Range("B" & .Rows.Count).End(xlUp).Row)
'on boucle sur chacune des cellules de la plage
For Each Cel In Plage
'on vérifie qu'il y a 7 caractère dans la cellule. Si oui on ajoute une apostrophe et un 0
If Len(Cel) = 7 Then Cel.Value = "'0" & Cel
'on passe à la cellule suivante
Next Cel
'On convertit la plage en dates
Plage.TextToColumns Destination:=.Range("B1"), _
DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, _
FieldInfo:=Array(1, 1), _
TrailingMinusNumbers:=True
Plage.Offset(0, 6).TextToColumns _
DataType:=xlDelimited, _
FieldInfo:=Array(1, 1), _
DecimalSeparator:="."
Plage.Offset(0, 7).TextToColumns _
DataType:=xlDelimited, _
FieldInfo:=Array(1, 1), _
DecimalSeparator:="."
End With
Application.ScreenUpdating = True
End Sub
Cordialement