Das Archiv des Excel-Forums

Listen vergleichen

nach unten


Betrifft: Listen vergleichen
von: Hauke

Geschrieben am: 25.09.2019 12:00:06

Hallo zusammen,
ich habe die Aufgabe, 2 Dateien miteinander zu vergleichen und upzudaten.
Beide haben unterschiedliche Formate, die ich aber bereits mit VBA umgewandelt bekomme, so dass sie identisch aussehen.
Nun stehen in der Spalte E jeweils eindeutige Nummern. Es soll überprüft werden, ob die Nummer aus Datei 1 auch in der Spalte E der Datei 2 enthalten ist.
- Falls ja, dann soll die Spalte D (Datei 1) in die Spalte D (Datei 2) kopiert werden.
- Falls nein, soll die komplette Spalte der Datei 1 in die erste leere Zeile unten in der Datei 2 kopiert werden.
Folgendes habe ich bereits gebaut:


Application.ScreenUpdating = False
On Error Resume Next
On Error GoTo 0
Set wkb = Workbooks.Open(Filename:=my_FileName)
Set wkb1 = ThisWorkbook
wkb1.Activate
Set wks = wkb.Worksheets(1)
Set wks1 = wkb1.Worksheets(1)
anz = wks.Cells(65536, 5).End(xlUp).Row
anz1 = wks1.Cells(65536, 5).End(xlUp).Row
For Z = 2 To anz1
suchwert = wks1.Cells(Z, 5)
With wks.Range("e2:a" & anz)
Set c = .Find(suchwert, LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then
For s = 4 To 5
wks.Cells(c.Row, s) = wks1.Cells(Z, s)
Next
Else
For s = 1 To 9
wks.Cells(anz + 1, s) = wks1.Cells(Z, s)
Next
anz = wks.Cells(65536, 1).End(xlUp).Row
End If
End With
Next
Application.ScreenUpdating = True

Es wird immer nur eine neue Spalte eingefügt, wenn eine unbekannte Nummer in Spalte E auftaucht. Weitere Nummern werden nicht gezogen bzw eingefügt. ?!
Die Werte in Spalte 4 werden garnicht erfasst.
Kann mir evtl jemand helfen und hat eine Lösung für mein Problem?
Vielen Dank schonmal vorab!
LG,
Hauke

Betrifft: AW: Listen vergleichen
von: MCO
Geschrieben am: 25.09.2019 12:40:39
Hallo Hauke!
Diese Angaben widersprechen sich:

On Error Resume Next
On Error GoTo 0

Wenn du doch den Suchwert in spalte 5 festlegst, und in spalte 5 findest, wieso musst du den dann mit einer Schleife nochmal reinschreiben?

anz1 = wks1.Cells(65536, 5).End(xlUp).Row
For Z = 2 To anz1
suchwert = wks1.Cells(Z, 5)
With wks.Range("e2:a" & anz)
Set c = .Find(suchwert, LookIn:=xlValues, LookAt:=xlWhole)
If Not c Is Nothing Then
For s = 4 To 5
wks.Cells(c.Row, s) = wks1.Cells(Z, s)
Next

Falls nein, soll die komplette Spalte der Datei 1 in die erste leere Zeile
Es wird immer nur eine neue Spalte eingefügt
Es mach gar keinen Sinn eine Spalte einzufügen, meinst du Zeile?
Vielleicht ist es doch sinnvoll eine Beispieldatei hochzuladen.
Gruß, MCO

Betrifft: AW: Listen vergleichen
von: Hauke

Geschrieben am: 25.09.2019 12:55:14
Hi MCO,
danke für deine Rückmeldung.
Das mit den Schleifen macht natürlich keinen Sinn, das schaue ich mir nochmal an.
Habe mal 2 Beispieldateien erstellt:
https://www.herber.de/bbs/user/132195.xlsx
https://www.herber.de/bbs/user/132196.xlsx
Das Makro liegt in Datei 1 und ist der aktuellste Stand mit Werten. Der Wert TEST in Spalte D müsste ein Update erfahren in Datei 2 für 12348 und der für die Fehlende Nummer 12346 müsste die komplette Zeile ;) unten angefügt werden in Datei 2.
Das ist der Plan.

Excel-Beispiele zum Thema "Listen vergleichen"

Dateien listen download Tabellenblattnamen in ein Listenfeld einlesen download
XL-Dateien in UserForm listen download Entfernungsmatrix listen download
Fundstellen in UserForm listen download Excel-Dateien eines Ordners listen download
Alle Dateien ab einem bestimmten Datum listen download Alle Prozeduren und Funktionen auflisten download
Geöffnete Arbeitsmappen mit Arbeitblättern listen download Doppelte Zelleinträge listen download
Verknüpfungen der aktiven Mappe listen download Zeichenfolge AAAA bis DDDD listen download
Nur Zellen mit Inhalt in ComboBox listen download VBA-Fehlermeldungen auflisten download
Spalten A und B vergleichen und Doppel in C listen download Kontextmenüs und ihre Elemente auflisten download
Verzeichnisbaum aufrufen und Dateien in ListBox auflisten download Offene Arbeitsmappen in Dialog listen download
Inhalt einer Zelle in Minutenabstand in einer Spalte auflisten download Monatstage eines vorgegebenen Zeitraum listen und addieren download
Bei Doppelklick Kontext-Menü mit Listeneinträgen anzeigen download Bereichsnamen in UserForm-ListBox auflisten und editieren download
Farbindex von 1 bis 56 auflisten download Wert aus UserForm-TextBox in Tabelle suchen und in ListBox listen download
Alle mehrfach vorkommenden Datensätze in zweiter Tabelle listen download Lücken aus Zahlenreihe listen download
Doppelt vorkommende Werte mit Zelleadresse auflisten download Doppelte Datensätze farblich markieren und auflisten download
Werte aus Matrix in zweitem Blatt auflisten download Zellen mit Hintergrundfarbe in neuer Arbeitsmappe auflisten download
Alle Menü- und Symbolleisten mit Ihren Schaltflächen auflisten download Zeichenfolge analysieren und Zeichen auflisten download
Artikelnummern suchen und jeweils letzte Fundstelle listen download Daten aus geschlossenen Arbeitsmappen listen download
Listenzusammenstellung anhand von Schlüsselnummern download Auflisten von OptionButtons in Kontextmenü download
Alle in Excel verfügbaren Schriften listen download Datenbereich in zweiter Tabelle ohne Duplikate listen download
Geöffete Arbeitsmappen in Menü-ComboBox listen download Werte in Abhängigkeit einer Gültigkeitslistenauswahl ermitteln download
Doppelt vorkommende Werte in einer UserForm-Combobox listen download Listen von Eingabedaten in einer anderen Tabelle download
Erhöhen der Positionsnummer bei Listeneintrag download Abfrage der Auswahl aus einem Gültigkeits-Listenfeld download
Bei Google zu einem Suchbegriff gefundene Links auflisten download Aus Liste Anzahl der Januartage eines bestimmten Jahres listen download
Artikelbenennungen entsprechend ihrer Stückzahl listen download Vergleich von zwei Listen und Ausgabe eines Wahrheitswertes download
Artikel mit vorgegebenem Wortanfang in ComboBox listen download Entfernen der letzten beiden Zeichen in Listenelementen download
Zellen vergleichen und markieren download Tabellen vergleichen download
Werte vergleichen download Bereiche auf Übereinstimmung vergleichen download
Daten in jeweils einer Spalte zweier Tabellen vergleichen download Werte vergleichen und Ergebnis in Tabelle eintragen download
Tabellen vergleichen und Zeilen ersetzen download Tabellen vergleichen und bei Nichtübereinstimmung markieren download
Textdateien vergleichen und Unterschiede dokumentieren download Spalte A mit B vergleichen und Doppel in C eintragen download
Telefonnumern mit Liste vergleichen und durch Namen ersetzen download Werte vergleichen und übertragen download
Teilstrings vergleichen und markieren download Textmuster vergleichen download