Bonjour Patrick33,Lermite,
Je pense que la boucle va créer ,elle aussi ,un problème.
Essaie avec :
Sub insertligne()
Dim Nbligne%, i%
Nbligne = ActiveSheet.UsedRange.Rows.Count
For i = Nbligne To 1 Step -1
If Range("D" & i).Font.ColorIndex = 5 Then Rows(i).insert
Next i
End Sub
En général quand on boucle pour ajouter ou supprimer lignes et colonnes , il faut partir du bas ou de la droite et revenir vers le haut ou vers la gauche.
Dans ton cas, lorsque tu rajoutes une ligne ,tu décales ta ligne i vers le bas,en incrémentant i avec i+1 ,tu retombes sur la même ligne.Tu vas donc boucler indéfiniment sur la même ligne.
Amicalement