11.03.2018, 20:19
Hallo, ich möchte gerne die Differenz einer Ergebnis-Zelle gegenüber der letzten Veränderung anzeigen lassen.
Beispiel:
D1 vor der letzten Berechnung: 15
D1 nach der letzten Berechnung: 5
Ausgabe D2: -10
Dies habe ich mit folgendem (nicht von mir stammenden, ich habe so gut wie keine Vorkenntnisse, was vba angeht) Code versucht:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim LoWert1 As Long
Dim LoWert2 As Long
If Target.Address(False, False) = "D1" Then
LoWert1 = Target
Application.EnableEvents = False
Application.Undo
LoWert2 = Target
Target = LoWert1
Target.Offset(1, 0) = LoWert1 - LoWert2
Application.EnableEvents = True
End If
End Sub
Wenn ich nun in D1 eine Änderung stattfindet, erfolgt die Fehlermeldung "benutzerdefinierter typ nicht definiert", wofür es laut Google vielfältigste Ursachen gibt, darum komme ich hier nicht weiter.
Beispiel:
D1 vor der letzten Berechnung: 15
D1 nach der letzten Berechnung: 5
Ausgabe D2: -10
Dies habe ich mit folgendem (nicht von mir stammenden, ich habe so gut wie keine Vorkenntnisse, was vba angeht) Code versucht:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim LoWert1 As Long
Dim LoWert2 As Long
If Target.Address(False, False) = "D1" Then
LoWert1 = Target
Application.EnableEvents = False
Application.Undo
LoWert2 = Target
Target = LoWert1
Target.Offset(1, 0) = LoWert1 - LoWert2
Application.EnableEvents = True
End If
End Sub
Wenn ich nun in D1 eine Änderung stattfindet, erfolgt die Fehlermeldung "benutzerdefinierter typ nicht definiert", wofür es laut Google vielfältigste Ursachen gibt, darum komme ich hier nicht weiter.