Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Mehrere Tabellen blätterübergreifend zusammenfügen und Werte vergleichen
#1
Hallo liebes Forum,

ich habe eine Aufgabe bekommen die meine Excel-Kenntnisse leider bisschen überschreiten.

Die Aufgabe: Ich habe 2 Tabellen die jeweils 3 Spalten (Material[A], Artikel[B], ID[C]) haben. Jetzt soll ich die Tabellen vergleichen und bei einer Übereinstimmung von dem Artikel[B], die ID von Tabelle_2 als Spalte [D] hinter die ID der Tabelle_1 schreiben. Also: wenn ich 2 ID's für einen Artikel habe, sollen diese hintereinander in Tabelle 1 stehen. Und falls es keine Übereinstimmung gibt, soll der Eintrag aus Tabelle 2, als neuer Eintrag, in Tabelle 1 übernommen werden.

Ich hoffe mir kann da jemand mit einer Formel helfen. Blush
Antworten Top
#2
Hallo Unbekannter,

eine Beispieldatei bzw ein Auszug des Tabellenblatts ist aussagekräftiger als viele Worte. Stellt sich auch die Frage, ob Artikel in  B mehrmals vorkommen oder nicht. Die Übereinstimmung und Spalte D/E? füllen, könnte man noch per Formel hinbekommen. Aber für das unten anfügen ist VBA sicherlich besser geeignet. Aber dies sieht man, wenn man ein Bsp. vor sich hat.
Viel Erfolg!
Andreas
Antworten Top
#3
Hutju,

mit Power Query könnte es so gehen:

Query Tabelle1
Code:
let
   Source = Excel.CurrentWorkbook(){[Name="Tabelle1"]}[Content],
   #"Changed Type" = Table.TransformColumnTypes(Source,{{"Material", Int64.Type}, {"Artikel", type text}, {"ID", Int64.Type}})
in
   #"Changed Type"

Query Tabelle2
Code:
let
   Source = Excel.CurrentWorkbook(){[Name="Tabelle2"]}[Content],
   #"Changed Type" = Table.TransformColumnTypes(Source,{{"Material", Int64.Type}, {"Artikel", type text}, {"ID", Int64.Type}})
in
   #"Changed Type"

Query Append1
Code:
let
   Source = Table.Combine({Tabelle1, Tabelle2}),
   #"Merged Queries" = Table.NestedJoin(Source,{"Artikel"},Tabelle2,{"Artikel"},"Tabelle2",JoinKind.LeftOuter),
   #"Expanded {0}" = Table.ExpandTableColumn(#"Merged Queries", "Tabelle2", {"ID"}, {"Tabelle2.ID"}),
   #"Added Conditional Column" = Table.AddColumn(#"Expanded {0}", "ID2", each if [ID] = [Tabelle2.ID] then null else [Tabelle2.ID] ),
   #"Removed Columns" = Table.RemoveColumns(#"Added Conditional Column",{"Tabelle2.ID"}),
   #"Removed Duplicates" = Table.Distinct(#"Removed Columns", {"Artikel"})
in
   #"Removed Duplicates"
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Antworten Top
#4
vielen vielen dank schonmal für die Antworten :)
Hier sind mal zwei Tabellen, wie es ungefähr aussieht.
Z.B.: Artikel G123 ist in Tabelle1 und Tabelle 2 gleich. Jetzt soll die ID2 (9) aus Tabelle 1 hinter die ID1 (6) in Tabele 2.
Dann steht schlussendlich in der Zeile: 999; G123; 6; 9

hoffe dadurch wird es ein bisschen verständlicher.
vielen dank im voraus
Antworten Top
#5
[
Bild bitte so als Datei hochladen: Klick mich!
]
[
Bild bitte so als Datei hochladen: Klick mich!
]
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste