Registriert seit: 18.10.2017
Version(en): microsoft excel 2010
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.
Registriert seit: 26.08.2017
Version(en): Excel 2007
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.
Registriert seit: 12.04.2014
Version(en): Office 365
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.
Registriert seit: 18.10.2017
Version(en): microsoft excel 2010
19.10.2017, 08:50
(Dieser Beitrag wurde zuletzt bearbeitet: 19.10.2017, 08:50 von hutju.)
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
Registriert seit: 18.10.2017
Version(en): microsoft excel 2010
[
Bild bitte so als Datei hochladen: Klick mich!]
[
Bild bitte so als Datei hochladen: Klick mich!]