Excel Datenvergleich + Monatssprung (automatisch)

hatschki

Lt. Junior Grade
Registriert
Juli 2013
Beiträge
369
Kleines bzw. größeres Problem bei Excel / VBA.
Ich hoffe ich kann das einigermaßen verständlich nahe bringen, ansonsten nachfragen.

Ich habe eine Excel-Datei mit 2 verschiedenen Arbeitsmappen (1x 2016 & 1x 2015)
In den jeweiligen Mappen ist der Aufbau ca. so:

Jan 15Feb 15Mrz 15
Produkt 120.000,0 €18.000,00 €9.000,00 €
Produkt 250.000,00 €52.000,00 €41.000,00 €
Produkt 3150.000,00 €103.500,00 €98.750,00 €

Nun zur eigentlichen Problemsituation.

Ich soll nun beide Mappen, die letzen 3 Monate gegeneinander vergleichen.
Aktuell wäre das zB Juli16,August16, September16 im Vergleich zu Juli15, August15, September15.
Die 3 Ergebnisse (%-Differenz) soll in 3 andere Spalten (in Mappe 2016) ausgegeben werden.
Sollte nun wie diese Woche, ein Sprung in den nächsten Monat stattfinden, soll die Tabelle es von selbst erkennen und dies anpassen. Dann werden quasi August, September, Oktober miteinander verglichen.

Hier bin ich mit meinem fachchinesich leider am Ende. Zumal ich nich sehr viel mit Excel mache und nur Grundskills beherrsche :-)

Hoffentlich hat einer DIE Lösung :-)
 
Sollte nun wie diese Woche, ein Sprung in den nächsten Monat stattfinden, soll die Tabelle es von selbst erkennen
Aber bitte was wie anpassen..? Soll also «jetzt» schon September, August, November verglichen werden? Als Doofie der auch mit Wochen herumjonglieren muss erfasse ich dennoch immer die Monate in denen ich bin…

@ryan_blackdrago
Was haben die Funktionalitäten mit der Intelligenz von VBA zu tun?

@hatschki
Bei Kalenderatobatik ob in dieser Woche ein Monatswechsel ist und wie ich das kurz und knapp programmiere, da muss ich aus der hohlen Hand passen. Eine Grundidee hätte ich aber schon…

CN8
 
@cumulonimbus8:

Das mit der Kalenderakrobatik soll so ablaufen (Bsp an heute)
Heute sollen die Werte der Monate Juli / August / September, in beiden Listen, angezeigt werden.
Am 1.11 sollen die Werte von August / September / Oktober, in beiden Listen, angezeigt werden.


@Janush
Ich schaue mir mal HLOOKUP an- eventuell verstehe ich es ja!
 
Nochmal von vorne :) Du hast zwei Listen welche Daten enthalten und nach obigen Muster strukturiert sind. Du möchtest jetzt beide in einer dritten Liste gegenüberstellen und vergleichen?

Das ist was ich verstanden habe, bevor du geschrieben hast, das ab dem nächsten Monat die Listen selber angepasst werden sollen.

Sorry, aber woher kommen die Daten?
 
Nochmal drüber reflektiert.

Das Vergleichsblatt muss eigentlich nur - vergleichen. Ich stelle mir eine (!) Hilfszelle vor die von mir aus sogar abhängig von heute() eine Zahl zurückliefert die dem ersten der 3 Monate als Spalte entspricht.
Damit können Bezüge zu den Quelldaten mittels dynamischer Adressangabe ohne weiteren Hokuspokus funktionieren.

Geht es um eine Darstellung fürs Auge mit 2x allen 3 Monaten oder würde ein Endresultat (z.B. prozentuale Änderung) zwischen den Jahren genügen?

CN8
 
Okay :-)

Also ich habe 1 Excelliste mit 2 Arbeitsmappen (1x 2015, 1x, 2016).
In jeder Arbeitsmappe ist eine Tabelle erstellt, wie sie oben beschrieben wurde.
Es sollen nun die letzten 3 Monate von 2015 und 2016 zusammenaddiert werden und in der letzten Spalte angezeigt werden (Siehe untenstehendes Beispiel)
Danach soll die Differenz von 2016 zu 2015 berechnet werden und in der Arbeitsmappen "2016" in der Spalte "Differenz" angezeigt werden (in %).

Differenz 2016 / 2015JuliAugustSeptemberOktoberNovemberDezemberletzte 3 Monate
-10 %20.000 €40.000 €150.000 €leerleerleer210.000 €
+52 %20.785 €98.000 €36.000 €leerleerleer154.785 €
+16 %30.000 €57.000 €15.000 €leerleerleer102.000 €

Ist nun ein Monatswechsel im Gange (wie zB heute auf morgen) soll die Liste das selbst merken und die verglichenen Monate um 1 weiterspringen -> Juli, August, September \\ wird zu // August, September, Oktober.


Woher kommen die Daten:
Werden immer am Monatsanfang in die Liste eingetragen.

Ich hoffe so ist es nun verständlich genug :-)
Bin selbst lang daran verzweifelt, da ich solche "komplexe" Dinger noch nicht vor mir hatte.
 
Nagut, der Monatswechsel ist nicht wirklich das Problem, ich denke der Jahreswechsel wird etwas komplizierter. Wie macht ihr das momentan? Fuer eine stabile Loesung kommt ihr wohl um VBA nicht herum. Vielleicht denke ich aber auch zu kompliziert :) Wieviele Zeilen hat eure Tabelle?
 
Aus Warte unserer Firma & meinem Geschmack würde ich auch klar zu VBA tendieren.

Aber man gibt ja nicht einfach so auf.
Ich würde das alte Rezept vorholen die Rohdaten (statt hier in die Breite in die Senkrechte gedreht) in »unsichtbaren« Bereichen aufzusammeln, sei das im selben Blatt in einem Bereich den man nur per Scrollen erreicht oder einem Daten-Blatt neben einem anzeige-Blatt.
Wie angedeutet kann man aus den Daten von HEUTE() mit ein bisschen Mathe live (Neu-Berechnen, Mappe öffnen) die abzugleichenden Bereiche in Form von Zeilen erfassen und das darstellen.

Das Jahr minus von mir aus 2010 ergibt eine Saat die mal 12 Monate zurückgibt. Damit kann ich diesen Monat als Ziele festklopfen, die letzten zwei mit und das alles ein Jahr zurück. ADRESSE() und vllt. INDIREKT() sollte da im Groben schon reichen das Wunder zu bewerkstelligen.

CN8
 
Das Problem an einer Formellösung ist ganz klar, dass sich die alten Werte bei einem "Monatssprung" nicht mitändern dürfen. Das geht nur mit copy paste special. Dann hat man aber wieder eine halb-manuelle flickschuster Lösung :-)
 
Ich meine etwas Vergleichbares mal so gelöst zu haben (finde das Sheet nicht mehr):
Die Werte des Vorjahres wurden (automatisch) ins Blatt x (wäre derzeit 2015) eingetragen, die Werte des laufenden Jahres fortlaufend ins Blatt y (2016).
Im Blatt a habe ich ein "virtuelles Jahr" erstellt, das mir die benötigten Werte (aus x und y) nebeneinander gezeigt und verrechnet hat. Die "Monatsauswahl" erfolgte manuell.
Damit ich die Sache noch übersichtlicher habe gestalten können, wählte ich (in einer idnetischen Kopie des virtuellen Jahres) die Monate per "Dropdown"-Liste aus (bei Ausblendung der andern Spalten) . Aber damit die Darstellung übers Jahresende hinweg funktioniert hat (also in der zeitlichen Abfolge der Monate, nicht in der "Jahresordnung" mit Januar vor November), musste ich das virtuelle Jahr auf 14 Monate erweitern (also November Dezember Januar Februar). Dann hat's hingehauen, iirc.
 
zazie schrieb:
Ich meine etwas Vergleichbares mal so gelöst zu haben (finde das Sheet nicht mehr):
Die Werte des Vorjahres wurden (automatisch) ins Blatt x (wäre derzeit 2015) eingetragen, die Werte des laufenden Jahres fortlaufend ins Blatt y (2016).
Im Blatt a habe ich ein "virtuelles Jahr" erstellt, das mir die benötigten Werte (aus x und y) nebeneinander gezeigt und verrechnet hat. Die "Monatsauswahl" erfolgte manuell.
Damit ich die Sache noch übersichtlicher habe gestalten können, wählte ich (in einer idnetischen Kopie des virtuellen Jahres) die Monate per "Dropdown"-Liste aus (bei Ausblendung der andern Spalten) . Aber damit die Darstellung übers Jahresende hinweg funktioniert hat (also in der zeitlichen Abfolge der Monate, nicht in der "Jahresordnung" mit Januar vor November), musste ich das virtuelle Jahr auf 14 Monate erweitern (also November Dezember Januar Februar). Dann hat's hingehauen, iirc.

Das klingt schon nach dem, was ich aktuell vor mir habe :-)
Eventuell kannst du es nochmal genauer erklären, damit ich das eventuell so ähnlich abbilden kann.
Die Tabellen sind zwar alle mit Daten gefüllt, diese könnte ich ggf. neu einfügen wenn ich die Liste abändern müsste.

Super das sich die Chefs solche Listen einfallen lassen, wir solche aber irgendwie zusammen schustern müssen..
 
Es hat etwas länger gedauert; zuerst habe ich nicht gesehen, dass du dich nochmals gemeldet hast, und nach deiner PN hatte ich keine Zeit. Immerhin kann ich dir jetzt folgende Hinweise geben:

1. Dein Wunsch nach automatischer Darstellung der letzten drei Monate abhängig vom Datum lässt sich grundsätzlich so lösen:
Code:
Feld 1 =(MONATSENDE(HEUTE();0))+1
Feld 2 =(MONATSENDE(B26;0))-31
Feld 3 =(MONATSENDE(C26;0))-31
Bitte beachten:
1. Im Beispiel ist Feld 1 B26. Die Bezüge für Feld 2 bzw. Feld 3 müssen angepasst werden.
2. Die drei Felder müssen speziell formatiert werden als MMMM jj.
Ergibt dann als Anzeige (ausgehend von heute, 28. November 2016): Dez 16 Nov 16 Okt 16
3. In extremen Fällen (also Abfrage an einem frühen Monatsdatum und unter Einschluss des Februars) kommt es möglicherweise zu einer Verschiebung. Das habe ich nicht getestet.

2. Meine Hinweise auf den "Dreimonatsüberlauf" (also pro Jahr 15 Spalten, Januar bis Dezember plus Januar bis März des Folgejahres) funktionieren. Wichtig ist es einfach, dass man die Werte der Spalten 13-15 aus dem Arbeitsblatt des Folgejahres** übernimmt, damit man dann auch 'saubere' Jahresrechnungen ohne Querverweise hat. Die Formel für eine solche Datenübernahme aus dem Reiter des Folgejahres lautet:
='2017'!$B$5
Logo, dass du das $b$5 an dein Arbeitsblatt anpassen musst, es ist das Summenfeld (oder was auch immer), das du für deine Berechnungen heranziehen willst. Ebenso logo ist, dass der Text in '-Zeichen ein Zitat ist: er muss der von dir gewählten Benennung des Arbeitblattes entsprechen.
Aber: Die 15-Monate Darstellung braucht es eigentlich gar nicht. Bei meinem Post vom 2.11. ging ich davon aus, dass du den Vergleichszeitraum selbst auswählst (das war seinerzeit meine eigene Ausgangslage; ich wollte einfach nicht aus zwei oder mehr Arbeitsblättern herauskopieren müssen). Das "automatisch" habe ich übersehen. Deshalb oben Ziffer 1.

3. Wie du nun automatisch auch die richtigen Werte in deinen (dynamischen) Drei-Monatsvergleich reinkriegst, ist für mich nicht ganz trivial, und ich kann keine pfannenfertige Lösung bieten. Vielleicht kennt ja sonst wer eine solche Lösung.
Ich würde am ehesten versuchen, jedem der in Frage kommenden 12 Monate in einem unsichtbaren Bereich eine eineindeutige Kennung zuzuweisen. Dann den Wert der Formel aus 1 in diese Kennung umwandeln und weiss in einer eigenen Spalte anzeigen. Darunter importierst du dann sichtbar die zu dieser Kennung gehörenden Werte. Die Formeln für Vergleiche, Maximalwerte, Durchschnittswerte und dergleichen sind dann trivial. Sie beziehen sich aber dann immer genau auf die gleichen Felder in der Dreimonatsübersicht. Deshalb die Feldbezüge unbedingt absolut setzen ($x$y)

** Nachbemerkung beim Durchlesen: Ich ziehe es jeweils vor, in einer Arbeitsmappe mit mehreren Arbeitsplättern (Reiter unten) zu arbeiten. Meine angaben beziehen sich also auf eine solche Ausgangslage.
 
So ich melde mich - nach einer etwas längeren Pause, auch mal wieder zu Wort.
Ich konnte es einigermaßen hinbiegen in dem ich weitere Tabellen erstellt habe und danach mit Summewenns gebastelt habe.

Bisher funktioniert es soweit, wie es gewünscht ist. Allerdings kommt demnächst erneut eine solche Liste und dann werde ich den weg nach @zazie testen. Kann mich gerne melden, wie es funktioniert hat.

-- Besten Dank an alle die geholfen haben --
 
Zurück
Oben