Sub eclater()
'le but est déclater le contenu d'une cellule en duplicant les lignes
'je cherche si il y a une virgule
ligne_en_cours = 4
While ligne_en_cours < 65000
If InStr(1, Cells(ligne_en_cours, 4).Value, ",") <> 0 Then
'ducliquer
Rows(ligne_en_cours + 1).Insert Shift:=xlDown
Rows(ligne_en_cours).Copy
Rows(ligne_en_cours + 1).Select
ActiveSheet.Paste
Application.CutCopyMode = False
'transformer le contenue de la colonne D de la ligne en cours
Cells(ligne_en_cours, 4).Value = Left(Cells(ligne_en_cours, 4).Value, InStr(1, Cells(ligne_en_cours, 4).Value, ",") - 1)
'transformer le contenue de la colonne D de la ligne créé
Cells(ligne_en_cours + 1, 4).Value = Right(Cells(ligne_en_cours + 1, 4).Value, Len(Cells(ligne_en_cours + 1, 4).Value) - InStr(1, Cells(ligne_en_cours + 1, 4).Value, ","))
End If
ligne_en_cours = ligne_en_cours + 1
Wend
End Sub