Oui c'est mieux en effet
Je stock la valeur de C1 dans une cellule à l'ouverture du classeur.
Puis je viens comparer C1 à cette valeur à chaque fois que la feuille est recalculée.
Si différente alors msgbox puis mise à jour de la cellule, sinon rien.
Private Sub Workbook_Open()
Sheets(1).[G1] = Sheets("CASH").Range("C1")
End Sub
Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
With Worksheets("CASH")
If .[C1] <> Sheets(1).[G1] Then
MsgBox "change"
Sheets(1).[G1] = .[C1]
End If
End With
End Sub
Il y a peut être mieux à faire ...