Wie verbinde ich zwei Tabellen mit LibreOffice Calc?

5

Ich habe zwei Tabellen, jede in einem eigenen Blatt in derselben Datei:

Name Alter
Alice 18
Bob 19
Carol 20
Dave 19

Name Geschlecht
Bob Männlich
Dave Männlich
Eve Weiblich

Ich möchte automatisch eine dritte Tabelle (Blatt) erstellen, die die verknüpften Daten für den Spaltennamen enthält:

Name Alter Geschlecht
Bob 19 Männlich
Dave 19 Männlich

Wird diese Operation in LibreOffice Calc unterstützt?

Christian
quelle
1
Dritte Tabelle: Verwenden Sie in der ersten Tabelle nur einen Zellbezug zu Name und Alter. Verwenden Sie VLOOKUP des Zeilennamens in der 2. Tabelle, um das Geschlecht auszufüllen.
Fixer1234
@ fixer1234: Das sollte die Antwort sein. Möchtest du es als Antwort schreiben?
Jim K

Antworten:

6

Hier ist eine einfache Möglichkeit, dies zu tun.

Blatt1:

Blatt1

Blatt 2:

Blatt 2

Blatt 3:

Blatt 3

In Blatt 3 sind Name und Alter nur Zellreferenzen zu Tabelle 1. A2 enthält also:

=Sheet1!A2

Und B2 enthält:

=Sheet1!B2

Das Geschlecht wird durch eine Suche nach dem Namen dieser Zeile in Tabelle 2 aufgefüllt. C2 enthält also:

=VLOOKUP(Sheet3!A2,Sheet2!A:B,2,0)

Beachten Sie, dass sich die Tabellen 1 und 2 nicht in derselben Reihenfolge befinden müssen.

Übrigens entsprechen diese Formeln den Voreinstellungen zum Emulieren der Excel-Formelsyntax in Tools | Optionen | LibreOffice Calc | Formel.

Überarbeitung für Kommentar

Hier ist eine einfache Möglichkeit, diesen Ansatz für Fälle anzupassen, in denen die Tabellen 1 und 2 nicht übereinstimmen und Sie nur die gemeinsamen Datensätze möchten. Angenommen, Tabelle 2 sieht wie in Ihrem Beispiel aus:

Blatt 2a

Die vorhandene Formel würde dies erzeugen:

Blatt 3a

Alice und Carol finden keine Übereinstimmung in Tabelle 2. Eva war nicht in Tabelle 1, daher wird es auch keine Übereinstimmung für sie geben. Durch Aktivieren der Filterung können Sie die # N / A-Datensätze ausblenden:

Blatt 3b

Wenn Sie eine saubere Tabelle haben möchten, in der diese Datensätze tatsächlich nicht mehr vorhanden sind, werden beim Kopieren und Einfügen von Sonderwerten (in LO Calc habe ich Text und Zahlen ausgewählt, aber keine Formeln) nur die nicht ausgeblendeten Zeilen eingefügt. Das wird in den Zeilen 10-12 gezeigt (beachte keine versteckten Zeilen).

fixer1234
quelle
1
In Ihrem Beispiel wird vorgeschlagen, dass alle Namen in Sheet1 und Sheet2 gleich sind. Ich möchte nur die Daten, in denen der Name in Sheet1 und Sheet2 enthalten ist, in Sheet3 kopieren. Geht das auch
Christian
@Christian, ich trinke noch etwas Kaffee und denke über andere Lösungen für LO Calc nach, die den Join direkter machen. :-)
fixer1234
@ Christian, Excel (Microsoft) hat einige Tools, wie hier beschrieben: superuser.com/questions/420635/… . Soweit ich weiß, hat LO Calc nichts Vergleichbares. Ich vermute, dass dies durch den Import der Daten in LO Base einfach wäre, aber ich habe das nie benutzt.
Fixer1234
@ Christian, ich habe eine ähnliche Frage für Excel auf SO gefunden: stackoverflow.com/questions/25657541/… . Die Lösungen, die die Leute dort gefunden haben, ähneln meiner ursprünglichen Antwort, testen jedoch den Fehler und ersetzen ihn durch eine leere Zelle.
Fixer1234
@ Christian, es gibt einige Add-In-Tools für Excel. Beispiel: digdb.com/excel_add_ins/join_merge_tables_lists . Die Verfügbarkeit von Add-Ins für LO Calc ist ziemlich begrenzt, aber das wäre eine weitere Möglichkeit, dies zu überprüfen.
Fixer1234