Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1512to1516
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zwei verschiedene Tabellen vergleichen

Zwei verschiedene Tabellen vergleichen
08.09.2016 14:57:42
Fabi
Hallo,
ich habe folgendes Problem und zwar möchte ich zwei Excel-Dateien miteinander vergleichen, beide Dateien gleichen sich bis auf eine Spalte nicht, daher wird diese Spalte zum vergleichen benötigt, jedoch gibt es bei der anderen mehr Zeilen als bei der anderen. Nur sollen bei allen gleichen Zellen der Dateien, die gleiche Zeile einer anderen Spalte übertragen werden.
Als Ergebnis soll es dann eine neue Datei geben, in der die alle gleichen Zellen aufgelistet werden. Aufgrund meiner VBA-Kenntnisse fällt es mir unglaublich schwer, auch nur annähernd an die Lösung zu kommen.
Sorry wenn es zu kompliziert geschrieben ist, bitte nachfragen wird wohl nicht sofort zu verstehen sein :/
vielen dank und grüsse
fabi

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Zwei verschiedene Tabellen vergleichen
08.09.2016 15:24:04
Michael
Hi Fabi,
das ist schon fast eine Standard-Frage hier im Forum...
Eine Lösung ins Blaue können wir Dir aber nicht anbieten, wenn wir nicht wissen, wie die Tabellen aussehen.
Es sind mehrere Ansätze denkbar, die u.a. auch davon abhängen, wie oft Du das machen willst, um welche Datenmengen es geht usw.
Einer davon läßt sich ganz gut händisch machen und mit dem Makrorekorder aufzeichnen, so daß relativ wenig Nachbearbeitung des Makros nötig wird:
a) kopiere das eine Tabellenblatt in eine neue Datei
b) bestücke eine komplette, neue Spalte (so weit runter, wie eben Daten vorhanden sind) mit dem Wert 1
c) kopiere das andere Tabellenblatt in das neue (a) unter die bereits vorhandenen Daten
d) bestücke die gleiche Spalte wie unter b) mit dem Wert 2
Dann kannst Du mal mit unterschiedlichen Sortierungen herumexperimentieren.
Schöne Grüße,
Michael
Anzeige
AW: Zwei verschiedene Tabellen vergleichen
12.09.2016 13:57:21
Fabi
Hallo Michael,
schonmal danke für deine Antwort...es handelt sich nicht um allzu große Tabellen, jedoch muss die beiden tabellen, jeden tag miteinander verglichen werden, um zu zeigen wie viel noch zu erledigen ist. demnach benötige ich eine VBA-Funktion...mit dem makrorekorder komme ich meiner Lösung nicht wirklich nahe...ich kann auch mal die beiden tabellen hochladen damit man besser versteht wie ich es machen muss.
viele grüße,
fabian
AW: Zwei verschiedene Tabellen vergleichen
12.09.2016 15:15:05
Bernd
Servus,
wir bitten darum :-)
Grüße
AW: Zwei verschiedene Tabellen vergleichen
12.09.2016 16:05:27
Fabi
Datei 1: https://www.herber.de/bbs/user/108127.xlsx
Datei 2: https://www.herber.de/bbs/user/108128.xlsx
Tabelle 2 handelt sich um die Tabelle, die anhand von der ID verglichen werden soll...Tabelle 2 hat mehrere ID-Einträge, daher nur die benötigten IDs aus Tabelle 1 nehmen und dementsprechend Spalte D aus Tabelle 2 ("Dokument") in Spalte G Tabelle 1 zusammenfügen...die nicht vorhandenen weglassen...
Anzeige
AW: Zwei verschiedene Tabellen vergleichen
13.09.2016 14:10:50
Fabi
Hat niemand eine Ahnung oder ist mein Beispiel wieder schlecht gewählt?
AW: Zwei verschiedene Tabellen vergleichen
13.09.2016 16:19:01
Michael
Hi,
in diesem Fall haben beide Tabellen die gleichen IDs, so daß im Prinzip ALLE übernommen werden würden - richtig?
Also, versuch mal das hier:
Option Explicit
Sub machen()
Dim od As Object, it
Dim neuSh As Worksheet
Dim wbPfad As String
Dim doc, id
Dim maxz&, z&
wbPfad = ActiveWorkbook.Path
' 1. neues Blatt anlegen
Sheets("sheet1").Copy after:=Sheets(Sheets.Count)
Set neuSh = ActiveSheet
' 2. zweite Datei öffnen, einlesen & schließen
Workbooks.Open Filename:="C:\A_Forum_DL\FabiM_108127.xlsx", ReadOnly:=True
' hier Dein Pfad usw.    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
maxz = Range("G" & Rows.Count).End(xlUp).Row
doc = Range("D2:D" & maxz)
id = Range("G2:G" & maxz)
ActiveWorkbook.Close savechanges:=False
' 3. Daten in "Dictionary" schaufeln
' neuSh.Range("H3").Resize(UBound(id), 1) = id ' das war nur zum Test
Set od = CreateObject("scripting.dictionary")
For z = 1 To UBound(id): od(id(z, 1)) = doc(z, 1): Next
' 4. Spalte G in neuer Tabelle mit "Dok" aus Dictionary füllen
maxz = neuSh.Range("D" & neuSh.Rows.Count).End(xlUp).Row
id = neuSh.Range("D2:D" & maxz)
doc = neuSh.Range("G2:G" & maxz)
For z = 1 To UBound(id)
If od.exists(id(z, 1)) Then doc(z, 1) = od(id(z, 1)) Else doc(z, 1) = ""
Next
neuSh.Range("G2").Resize(UBound(id), 1) = doc
' 5. hier ggf. nach Spalte G sortieren, damit leere am Stück gelöscht werden können
' 6. neuSh in neue Datei schreiben
neuSh.Move
ActiveWorkbook.SaveAs Filename:=wbPfad & "\" & "FabiM_" & CStr(Timer) & ".xlsx", _
FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
ActiveWorkbook.Close
End Sub
Datei: https://www.herber.de/bbs/user/108144.xlsm
Ich habe das Makro aus Zeitgründen in die "erste" Datei gepackt; es ist noch nicht ganz so, wie Du es Dir vorstellst, aber es ist zu heiß zum Denken; vielleicht macht es jemand anderes gar fertig.
Schöne Grüße,
Michael
Anzeige
AW: Zwei verschiedene Tabellen vergleichen
14.09.2016 08:50:29
Fabi
Hey Michael,
super danke dir so habe ich es mir vorgestellt in etwa...ich hab jetzt nur noch zwei Probleme, die ich nicht gelöst bekomme.
Und zwar hat die erste Tabelle 7 IDs und die zweite 12 IDs. Die 7 IDs sind in der zweiten Tabelle enthalten, aber in unterschiedlicher Reihenfolge.
Und das zweite ist, dass dann erst die ID in der zweiten Tabelle gesucht wird und danach der dazugehörige Eintrag der Spalte "Dokument" in Tabelle 1 in eine neue Spalte zur richtigen ID hinzugefügt wird.
Schonmal danke für die bisherige Lösung, hat mir schon viel gebracht.
grüße,
Fabi
Anzeige
AW: Zwei verschiedene Tabellen vergleichen
14.09.2016 13:14:17
Michael
Hi Fabi,
ehrlich gesagt, ich verstehe das Problem nicht: das Makro verarbeitet die zweite Datei (mit den "Dok"), egal, wieviele IDs vorhanden sind und in welcher Reihenfolge...
Ich kann gerne was ändern, aber dann solltest Du mir mal einen Satz Dateien hochladen, aus denen eindeutig hervorgeht, was von wo wohin soll.
Schöne Grüße,
Michael
AW: Zwei verschiedene Tabellen vergleichen
14.09.2016 15:52:38
Fabi
servus michael,
hat sich schon erledigt, deine lösung war absolut richtig, ich habe es nur falsch angewendet...vielen dank...ich musste nur die zeilen für mein beispiel anpassen und dann hat es funktioniert...
nochmal danke und viele grüsse,
fabi
Anzeige

311 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige