en ligne 2 ! pas en lignes 7 à 46 ! la sub Worksheet_Change() fait rien du tout pour les autres lignes, car il y a :
lig = .Row: If lig < 7 Or lig > 46 Then Exit Sub
c'est donc pas cette sub qui causait ton erreur de cellules fusionnées !
en plus, note bien que pour ta ligne 2 avec cellules fusionnés : 2 est inférieur à 7 ➯ sortie de sub
tu as écrit que tu as mis : lig = .Row: If lig <> 2 Then Exit Sub
pour ta ligne 2, c'est bon maint'nant, alors, n'est-ce pas ? tout est ok ?
⚠ si tu as placé cette ligne dans Worksheet_Change() c'est inutile vu qu'y'a déjà le test inférieur à 7.
sauf si tu as autre chose à demander, je considère ton 2ème exo comme terminé.
dhany