Bonsoir,
Après un coup d’œil rapide à votre code, je ne vois déjà pas l'utilité de ces instructions :
Application.EnableEvents = True
' teste si la cellule juste au dessus est remplie
If Range("premiereCelluleApresTableau").Offset(-1) <> "" Then
' ajoute une ligne - la ligne s'insère au dessus
Application.EnableEvents = False
Range("premiereCelluleApresTableau").EntireRow.Insert xlShiftDown
Application.EnableEvents = True
End If
car comme vous utilisez des tableaux structurés, une saisie dans la ligne juste en dessous de la dernière ligne du tableau, ajoute automatiquement une ligne au tableau et recopie le format des lignes du tableau.
Comme vous avez des listes de validation dans les colonnes de vos tableaux, le mieux est de créer une nouvelle ligne en se positionnant sur la dernière cellule en bas à droite et de cliquer sur la touche "tab". Si vous supprimez les instructions ci-dessus, votre nouvelle ligne est bien créée avec reprise des formats.