Clever-Excel-Forum

Normale Version: Tabellen in eine Mastertabelle einfügen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

Eine Frage, die jemandem mit Ahnung bestimmt total leicht fällt (also mir nicht):

Ich habe 18 Tabellen (je 10 Spalten (fix) und ca. 80 Zeilen (mal mehr, mal weniger)), die teils unterschiedliche, teils gleiche Arten enthalten. Nun würde ich gerne alle Arten, die insgesamt vorkommen, in jederTabelle stehen haben. Wenn die Art in der einen Tabelle nicht vorkommt, soll sie als Wert "0" bzw leer haben.

Anders gefragt: Ich möchte eine Tabelle in eine andere mit mehr Zeilen einfügen. Nun sollen, wenn Art A  in beiden Tabellen vorkommt, die Werte eingetragen werden, wenn die Art nicht vorkommt, soll "0" eingetragen werden. Folgend mal ein Beispiel (links wie es ist, rechts wie es sein soll):

[attachment=31897]

Kann Excel so etwas?

Ich hoffe, ich konnte mich irgendwie verständlich machen... Zur Info, ich brauche das in diesem Format, weil ich die Daten anschließend in R einspielen werde. Wenn das irgendwie hilft, eine "Mastertabelle" mit allen Arten hätte ich. Und ich benutze Office 356 PlusPro.

Bitte verzeit den Dilettantismus und vielen, vielen Dank, wenn sich jemand finden sollte, der sich meiner annimmt.

Jere
Hi,

lade bitte anstatt des Bildchens eine Beispieldatei hoch.
Jup, sorry. In der Datei sind die verschiedenen Tabellenblätter und eine Gesamtartenliste.
Moin

Mit ein paar kleinen Anpassungen.
Hallo,

vielleicht auch so:

Code:
Sub TabellenAuffuellen()
  Dim oWs As Worksheet
  Dim varQ As Variant
  
  varQ = Worksheets("Artenliste").Range("A1").CurrentRegion.Value
  For Each oWs In Worksheets
    With oWs
      If .Name <> "Artenliste" Then
        With .Cells(.Rows.Count, 1).End(xlUp)
          .Offset(1, 0).Resize(UBound(varQ)).Value = varQ
          .Offset(1, 1).Resize(UBound(varQ), .CurrentRegion.Columns.Count - 1).Value = 0
          .CurrentRegion.RemoveDuplicates Columns:=1, Header:=xlYes
          .CurrentRegion.Sort Key1:=.Cells(1), Order1:=xlAscending, Header:=xlYes
        End With
      End If
    End With
  Next oWs
End Sub

Gruß Uwe
Wow, vielen Dank für die schnelle Hilfe shift-del! Das klappt super :64:  

Hast einem Biologen den Abend gerettet :)

Und Danke Uwe, ich hab´s gar nicht mehr ausprobiert, weil ich so froh war, das es geklappt hat. Aber auch dir vielen Dank!!!