Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Bestehende Daten prüfen und nicht vorh. neue Daten anfügen.

Forumthread: Bestehende Daten prüfen und nicht vorh. neue Daten anfügen.

Bestehende Daten prüfen und nicht vorh. neue Daten anfügen.
29.08.2024 13:16:52
KMatz
Hallo ihr Lieben
Ich benötige Eure Unterstützung bei der Vervollständigung von meinem VBA- Code.

Sub Datei_Importieren()
Worksheets("QS_Projektdaten").UsedRange.ClearContents
Dim Dateiname, Pfad
Pfad = "C:\Users\matzenbacherk\Desktop\Datenquellen Test\Archiv\"
Dateiname = Dir$(Pfad & "*.xlsx")
Workbooks.Open Pfad & Dateiname, ReadOnly:=True
ActiveWorkbook.Sheets("Sheet1").UsedRange.Copy
ThisWorkbook.Sheets("QS_Projektdaten").Cells(1, 1).PasteSpecial xlPasteValues
Application.DisplayAlerts = False
ActiveWorkbook.Close
Application.DisplayAlerts = True
Range("A1").Select
End Sub

Dieser macht mal grundsätzlich, was er soll. Meine Frage, wie kann ich den Code modifizieren, das Er erkennt/prüft ob die Daten im Tabellenblatt QS_Projektdaten schon vorhanden sind und nur die neuen Daten, welche sich nicht in dem Tabellenblatt befinden in der letzten Zeile (am ende der Daten) einfügt. Die Prüfung soll auf die Inhalte der Spalte A erfolgen "Projekt". Da die Spalte A "Projekte" die Projektnummern mehrfach darstellt (liegt an den Artikel pro Projekt) kann ggf. kann als zusätzliches Kriterium die Pos. (Nummer) in Spalte E verwendet werden. Diese sind pro Projekt immer eindeutig.

https://www.herber.de/bbs/user/171882.xlsx

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Bestehende Daten prüfen und nicht vorh. neue Daten anfügen.
29.08.2024 17:41:55
Yal
Hallo Karsten,

wenn ich es richtig verstehe, möchtest Du eine Mischung von alte und neue Daten.
Du hast die alt-Daten
A | 1
B | 2
C | 3

und bekommst neue Daten
B | 5
C | 6
D | 7

Am Ende sollte
A | 1
B | 5
C | 6
D | 7

übrig sein. Richtig?

Das erreichst Du mit Power Query (PQ).
Definiere die Ziel-Liste als Tabelle (Menü "Einfügen", "Tabelle"), auf Menü "Daten", "aus Tabelle" klicken. Dann hast Du deine "alt-Daten" in einer Abfrage. In PQ rechtsklicke links in der Abfrageliste und erzeuge eine neue Abfrage auf die Datei, die die neu-Daten liefert. Führe die beide Abfrage zusammen, um die Einträge aus der alte zu identifizieren, die in der neue vorkommen (Du brauchst einen eindeutigen Schlüssel. Es scheint AuftragNr+Position zu sein), filtere diese Einträge raus und kombiniere diesen Stand mit den neuen Daten. Dann ausgeben. Es erzeugt eine neue Tabelle. In PQ musst Du nur noch die erste Tabelle für alt-Daten durch die Ausgabe-Tabelle ersetzen. Fertig.

Es sieht dann so aus: https://www.herber.de/bbs/user/171889.xlsx


Siehe https://excelhero.de/power-query/power-query-ganz-einfach-erklaert

VG
Yal
Anzeige
AW: Bestehende Daten prüfen und nicht vorh. neue Daten anfügen.
30.08.2024 07:35:26
KMatz
Super, vielen Dank. Da kann ich erst mal was mit anfangen.
AW: Bestehende Daten prüfen und nicht vorh. neue Daten anfügen.
30.08.2024 09:39:13
daniel
Hi
wenns ohne PQ sein soll:

1. kopiere die alten Daten und füge sie unter die neuen ein
2. wende auf die ganze Tabelle die Funktion DATEN - DATENTOOLS - DUPLIKATE ENTFERNEN an und gib die Spalten an, die die Eindeutigkeit definieren.
dann werden aus dem unteren Teil (alte Daten) diejenigen Zeilen gelöscht, die im oberen Teil (neue Daten) auch vorhanden sind.

das lässt sich auch einfach mit VBA programmieren. Der Recorder hilft dir.

Gruß Daniel
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige