Worksheet_Calculate löst immer aus, wenn Formeln neue berechnet werden. Ob das dann auch deine D4 betrifft, muss man überprüfen - genau das macht das Beispiel von Torsten.
Private Sub Worksheet_Calculate()
Static D4_Alt As Double
If Range("D4").Value <> D4_Alt Then
D4_Alt = Range("D4").Value
MsgBox "Hallo"
End If
End Sub
Angenommen es steht die Formel in D4 = A1+A2.
Wenn der Inhalt von A1 oder A2 geändert wird, wird die Formel autom. neu berechnet -> Worksheet_Calculate wird ausgelöst.
Jetzt wird der Inhalt der Zelle D4 mit dem (zuvor) gemerkten Inhalt - statische Variable D4_Alt - verglichen. Sind die Werte unterschiedlich (Wert in D4 hat sich geändert), dann wird die Meldung angezeigt und der Wert der statischen Variable wird aktualisiert, damit im nächsten Durchgang wieder auf Änderung geprüft werden kann.
Das funktioniert auch so. Geht es bei dir nicht, dann brauchen wir mehr Infos. ;)
LG
|