ich benötige mal wieder Hilfe bzgl. einer VBA-Programmierung (oder ggf. auch ohne VBA)
Zur Zeit bin Praktikant in einem Technikmuseum, in dem ich die Ausstellungsorganisation unterstütze. Die folgende beschriebene Situation ist (datenschutzgemäß) simplifiziert. Bspw. gibt es deutlich mehr Exponate und deutlich mehr Positionen.
Es geht darum für alle beteiligten Kollegen eine Übersicht der aktuell ausgestellten Exponate darzustellen. Diese Übersicht liegt bereits vor und kann nur bedingt von den den Grund-Parametern geändert werden.
Ich möchte über einen VBA-Makro prüfen ob die Chronologie und/oder die Dekaden-Zuordnung der Übersicht stimmt. Es ist hierbei nicht zwingend relevant, dass die Positionen stringent hintereinander aufgelistet werden.
Zur Ausgangssituation:
-Es gibt zwei Stränge in der der Ausstellung (Wand links/rechts) die jeweils chronologisch geordnet werden sollen.
Wand rechts: Positionen 1-4, 11-14 und 20-24 (bspw. soll auf der rechten Seite das Jahr bei Position 4 mit dem Jahr an Position 11 verglichen werden, nicht mir Position 5)
Wand links: Positionen 5-10 und 15-19
-Die Positionen können nicht neu vergeben werden
-Die Zuordnung von Exponate-Nummer, Exponate-Bezeichnung und Exponate-Jahr kann nicht neu vergeben werden
-Die Exponate-Bezeichnung und das Exponate-Jahr wird über einen XVERWEIS mittels der Exponate-Nummer abgerufen
Gewünschter Zielzustand
-Wenn ein Exponat ein anderes ersetzt, soll -sofern die Chronologie und Dekadenzuordnung nicht stimmt- ein Hinweis am Ende der betroffenen Zeile angezeigt werden, dass hier etwas zu tun ist. Hinweis: CHRONOLOGIE PRÜFEN! bzw. DEKADENZUORDNUNG PRÜFEN! Eine automatische Anpassung wäre der absolute Traum, ist aber nicht notwendig.
aktuell helfe ich mir mit der WENN-Funktion, was jedoch nur bedingt funktioniert. Teilweise "verhaut" es mir diese WENN-Funktion wenn ich Zeilen löschen, ausschneide oder verschiebe, da die Bezugszellen nicht mehr stimmen. Ggf. gibt es hier auch eine Lösung ohne VBA, die die Bezugszellen fixiert und Excel versteht, welche Position nach welche Position kommen soll?
Bspw:
=WENN(ISTZAHL(C16);WENN(ISTZAHL(C7);WENN(C7
angehängten Datei
Hier gibt es Drei Situationen, die mein Problem genauer beschreiben sollen.
Situation 1 (Ausgangssituation, aktueller Stand)
Situation 2, bei der zwar die Reihenfolge stimmt (Position 4: 1907, Position 11: 1908) jedoch nicht die Dekadenzuordnung (1908 ist bei 1960er und nicht bei vor 1950)
Situation 3, bei der die Chronologie und Dekadenzuordnung nicht stimmt
Die beiden Situation 2 und 3 werden von links falsch nach rechts richtig aufgelöst. die falschen Zeilen/Zuordnungen werden rot hinterlegt dargestellt, die richtigen grün
Ich hoffe ihr könnt mir helfen und dass ich mich klar genug ausgedrückt habe.
Vielen Dank vorab
Hans
https://www.herber.de/bbs/user/153446.xlsm