Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Plausicheck über WorksheetChange vereinfachenß

Forumthread: Plausicheck über WorksheetChange vereinfachenß

Plausicheck über WorksheetChange vereinfachenß
20.06.2024 15:05:08
Martin
Ich habe für verschiedene Tageszeiten eines jeden Wochentags jeweils ein Tabellenblatt, in denen jeweils in einer Spalte zeilenweise zu mehreren Artikeln deren Inventurwerte in Form eines Anfangsbestands eingegeben werden müssen. Bei jeder Eingabe soll geprüft werden, ob der Wert identisch mit dem Endbestand des Vortags ist.
Für einen einzelnen Artikel kriege ich das so hin:

Private Sub Worksheet_Change(ByVal Target As Range)

If Worksheets("Dienstag Tag").Range("D2") > "" And Worksheets("Dienstag Tag").Range("D2") > Worksheets("Montag Nacht").Range("E2") Then

MsgBox "Der eingegebene Anfangsbestand entspricht nicht dem letzten Endbestand", vbCritical
Worksheets("Dienstag Tag").Range("D2") = ""
Worksheets("Dienstag Tag").Range("D2").Select
End If

End Sub

Ich müsste jetzt analog die Prüfung für D3 gegen E3, D4 gegen E4 etc. mit entsprechenden Bedingungen duplizieren. Mir stellt sich die Frage, ob das nicht einfacher geht, da zumindest innerhalb eines Tabellenblatts die Namen der beiden Blätter ja immer gleich sind.
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Plausicheck über WorksheetChange vereinfachenß
20.06.2024 18:51:02
ralf_b
mach das über Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) in DieseArbeitsmappe dann brauchst du den Code nur einmal.

sh ist die Referenz auf das geänderte Blatt und Target kennste scheinbar nicht.

Um auf das passende Vortagesblatt zu referenzieren wirst du noch ein bissel mit den Tagen spielen müssen.
Anzeige
AW: Plausicheck über WorksheetChange vereinfachenß
21.06.2024 11:21:58
GerdL
Hallo Martin,

als Zwischenschritt für das eine Blatt mit neuen Anfangsbeständen.
Für Weitere müsstest Du die Namen der zusammengehörenden Blätter mit Anfangsbeständen - Endbeständen mitteilen.


Gruß Gerd



AW: Plausicheck über WorksheetChange vereinfachenß
21.06.2024 11:28:21
Onur
"Ich habe für verschiedene Tageszeiten eines jeden Wochentags jeweils ein Tabellenblatt," ? Für Lagerbestände ? Echt ? Wieviele Blätter hast du denn?
Excel soll die Arbeit erleichtern, aber so, wie du das machst, erschwerst du Excel das. Da hast du wohl irgendwo irgendwie den Faden verloren.
Anzeige
AW: Plausicheck über WorksheetChange vereinfachenß
21.06.2024 11:26:45
GerdL
Upps

'Ins Blattmodul von 'Dienstag Tag' kopieren

Private Sub Worksheet_Change(ByVal Target As Range)

'Eintrag in Spalte D unterhalb von D1 und ohne Mehrfachauswahl
If Target.Row > 1 And Target.Column = 4 And Target.CountLarge = 1 Then
If IsNumeric(Target.Text) Then 'Zahl eingetragen
'Abgleich mit Endbestand vom Vorblatt
If Target.Value > Worksheets("Montag Nacht").Range(Target.Offset(0, 1).Address) Then
MsgBox "Der eingegebene Anfangsbestand entspricht nicht dem letzten Endbestand", vbCritical
End If
End If
End If
Anzeige
AW: Plausicheck über WorksheetChange vereinfachenß
24.06.2024 10:34:33
Martin
Danke Gerd,
genauso habe ich mir das vorgestellt! Funktioniert perfekt. Mit den Anpassungen für die übrigen Tabellenblätter komme ich nun selbst zurecht.
Gruß
Martin
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige