Worksheet-Change Event
10.10.2018 09:08:57
JohnM.
am 21.09. habe ich schon einmal dieses Thema aufgemacht. Leider kann ich im ursprünglichen Thread gerade nichts ergänzen. Deshalb leider der neue Thread:
Damals habe ich folgenden Sachverhalt beschrieben:
"In den Zellen A1 bis A10 können jeweils Kontonummern eingetragen werden und die dazugehörigen Geldbeträge werden dann von A11 bis A21 wiedergegeben. Ich möchte nun erreichen, dass sobald eine Kontonummer eingegeben wird, im unteren Bereich ab A11 der Wert zunächst auf "0" gesetzt wird, da der Wert im Anschluss geändert werden soll. Sprich wenn ich in A1 eine Kontonummer eingebe, soll in A11 "0" erscheinen und wenn in A2 eine Kontonummer eingegeben wird, soll in A12 "0" erscheinen und so weiter.
Im Anschluss soll der Benutzer in der Lage sein, die "0" problemlos zu ändern, ohne dass dabei ein Loop entsteht."
Hiebei habe ich folgende Code implementiert, der auch super geholfen hat:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rCell As Range
If Not Intersect(Target, Range("A1:A10")) Is Nothing Then
Application.EnableEvents = False
For Each rCell In Intersect(Target, Range("A1:A10"))
rCell.Offset(10) = 0
Next rCell
Application.EnableEvents = True
End If
End Sub
-> Jetzt müsste jedoch noch eine Kleinigkeit ergänzt werden. Und zwar kann es vorkommen, dass Benutzer erst Beträge in die Zellen ab A11 eingeben und dann die dazugehörigen Kontonummern ab A1 eingeben. Im Falle der Eingabe der Kontonummer springt der Geldbetrag logischerweise aufgrund des Change_Events wieder auf 0, obwohl der Nutzer den richtigen Betrag eingegeben hat. Gibt es eventuell eine Möglichkeit, dass in den Fällen, bei denen erst der Geldbetrag eingegeben wird und dann die Kontonummer, der Geldbetrag nicht auf Null springt, sondern den eingegebenen Geldbetrag beibehält?
Vielen lieben Dank im Voraus für eure Mühe!
Liebe Grüße
John
Anzeige