Bonjour le fil,
Une variante....(loin de moi l'idée de rivaliser avec Jean-Eric, c'est juste pour me prêter à l'exercice, )
Sub essai()
Dim PL As Range
Dim CEL As Range
Dim i As Integer, j As Integer, dl As Integer
dl = Range("B" & Rows.Count).End(xlUp).Row
Set PL = Sheets("Feuil1").Range("A3:F" & dl)
For Each CEL In PL
If CEL.MergeCells = True Then CEL.MergeArea.UnMerge
Next CEL
For i = 3 To dl - 1
For j = 1 To 6
If Cells(i + 1, j) = "" Then Cells(i + 1, j) = Cells(i, j)
Next j
Next i
End Sub
Cordialement,