Beispiel:
A1 vor der letzten Berechnung: 15
A1 nach der letzten Berechnung: 5
Ausgabe B1: -10
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim LoWert1 As Long
Dim LoWert2 As Long
If Target.Address(False, False) = "A1" Then
LoWert1 = Target
Application.EnableEvents = False
Application.Undo
LoWert2 = Target
Target = LoWert1
Target.Offset(0, 1) = LoWert1 - LoWert2
Application.EnableEvents = True
End If
End Sub
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim LoWert1 As Long
Dim LoWert2 As Long
If Target.Address(False, False) = "gemeinkosten!A1" Then
LoWert1 = Target
Application.EnableEvents = False
Application.Undo
LoWert2 = Target
Target = LoWert1
Target.Offset(0, 1) = LoWert1 - LoWert2
Application.EnableEvents = True
End If
End Sub
Es heißt also 'gemeinkosten', habe ich das richtig gemacht? Dann kann ich in dem Code die Zelle B1 gar nicht finden, aber vermute, dass die durch 'Target.Offset(0, 1)' angesteuert wird, richtig? Seis drum, wenn ich nun eine Veränderung in A1 bewirke, passiert in B1 leider gar nichts.