ich nutze zur Zeit zwei Listen, zwischen denen ich Daten manuell kopiere. Diesen Vorgang würde ich gerne automatisieren.
Liste 1 ist eine Liste, deren Daten (z.B.) Projektnummern enthält, welche aus einer ERP-Software abgerufen werden. Diese Daten sind immer genau für die letzten zwei Monate aktuell, heißt die "oberen" Einträge verschwinden bei einer Aktualisierung, da sie älter als zwei Monate sind.
Liste 2 enthält die Daten aus Liste 1 in fortgeschriebener Form. Heißt also, wenn Daten in Liste 1 dazu kommen, kopiere ich diese und füge sie in Liste 2 ein.
Diese Fortschreibung würde ich gerne automatisieren, heißt die bestehenden Daten in Liste 2 sollen erhalten bleiben (festgeschrieben werden), bei einer Aktualisierung sollen die neuen Daten aus Liste 1 "automatisch" hinzugefügt werden.
Was ich also bräuchte, ist ein Vergleich der Daten, welcher erkennt, dass neue Daten hinzugekommen sind und diese aus Liste 1 abholt.
Die Lösung ist mit Sicherheit nicht allzu kompliziert, leider fehlen mir da etwas die Grundlagen und auch in der Suche konnte ich nicht direkt erkennen, wie es laufen könnte. Von daher hoffe ich auf eure Hilfe
eine kleine Beispieldatei mit anonymen Daten sagt mir mehr als viele Worte. Vor allem müssen wir zum Programmieren wissen wie die Tabellen Namen heissen, in welchen Spalten/Zeilen die Daten stehen, was von wo nach wo kopiert oder verschoben werden muss, usw.
Die Chancen das der Thread bearbeitet wird sind mit einer Beispieldatei einfach besser.
Die Abfragetabelle sieht wie folgt aus, hier sind zwei verschiedene Abfragetermine gezeigt. Man sieht, dass sich die Daten unterscheiden, da bei einer erneuten Abfrage die ältere Abfrage überschrieben wird. Zu sehen ist erst Abfrage 1, anschließend die spätere Abfrage 2.
anbei meine Beispieldatei zum Konsolidieren. Weil manche Kollegen keine xlsm Dateien öffnen beide Versionen. (Makros sind im Info Blatt)
Im 1. Makro must du noch in den Const Anweisungen deinen Ordner Pfad und deine Dateinamen 1+2 richtig angeben. Die Dateien werden automatisch geöffnet und geschlossen. Ich kopiere die Daten in Tabelle1+2. Die Tabelle2 dient nur zur Kontrolle welche Originaldaten kopiert wurden. Diese Kopierzeile kann man auch im Makro löschen! siehe *** Zeile
Das 2. Makro sortiert die Daten in Tabelle1 und löscht alle doppelten Datensaetze per For Next Schleife. Dabei werden alle sechs Spalten einzeln verglichen! Im Makro 2 kann die Msgbox über Const msgJa abgeschaltet werden. In Zelle H1 + H2 steht das aktuelle Datum und die Uhrzeit der Konsolidierung.