Re,
commence déjà par ôter ces macros d'un module et de les placer dans le ThisWorkbook
ensuite
Private Sub Workbook_Open()
'Lance le clignotement à l'ouverture si la cellule B11 ="Mauvais"
With Sheets("TDB J-1")
For I = 4 To 28
If Sheets("TDB J-1").Cells(I, 9) - Sheets("TDB J-1").Cells(I, 8) <> Sheets("TDB J-1").Cells(I, 10) Then
Clign
ElseIf Sheets("TDB J-1").Cells(I, 13) - Sheets("TDB J-1").Cells(I, 12) <> Sheets("TDB J-1").Cells(I, 14) Then
Clign
End If
Next I
End With
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
'Interrompt le clignotement éventuel avant fermeture
StopClign
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim F As Worksheet
If Target.Count > 1 Then Exit Sub
If Not Application.Intersect(Target, Range("J4:J28")) Is Nothing Then
For I = 4 To 28
If Sheets("TDB J-1").Cells(I, 9) - Sheets("TDB J-1").Cells(I, 8) <> Sheets("TDB J-1").Cells(I, 10) Then Clign
Else: StopClign
End If
Next I
'Lance ou stoppe le clignotement
End If
If Not Application.Intersect(Target, Range("N4:N24")) Is Nothing Then
For I = 4 To 28
If Sheets("TDB J-1").Cells(I, 11) - Sheets("TDB J-1").Cells(I, 12) <> Sheets("TDB J-1").Cells(I, 14) Then Clign
Else: StopClign
End If
Next I
'Lance ou stoppe le clignotement
End If
End Sub
'Ensuite j'ai créé un module dans lequel j'ai écrit la procédure de clignotement et l'arrêt du clignotement