Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: VBA Tabellen zusammenfügen

VBA Tabellen zusammenfügen
10.01.2023 15:02:09
Susanne
Hallo an alle,
ich versuche gerade zwei variable Tabellen mittels vba Code zu vereinen. Ich habe mehrere Tabellen auf dem Sheet "Query Pzahlen 2022 A3.2" und möchte dort Tabelle 8 mit der Tabelle 4 vom Sheet "Query Pzahlen 2021 A3.2" auf einem neuen Tabellenblatt zusammenfügen. Der Tabellenaufbau ist identisch. Ziel ist Sheet "A3.2" in Zelle E7. Die 2. Tabelle soll dann unterhalb der ersten eingefügt werden. Ich habe mich in folgendem vba Code versucht und bin kläglich gescheitert:

Sub Tabellenblaetter_3_2_zusammenfügen()
Dim objList As ListObjects
Dim sh As Worksheet
'Daten kopieren und einfügen
sh("Query Pzahlen 2022 A3.2").Select
objList.ListObjects("Tabelle8").Copy
Sh("A3.2").Select
Range("E7").PasteSpecial
sh("Query Pzahlen 2021 A3.2").Select
objList.ListObjects("Tabelle4").Copy
master.Cells(Rows.Count).End(xlUp).Offset(1).PasteSpecial
End Sub
Hat jemand einen Tipp für mich - ich steige in vba erst langsam ein und freue mich daher über jede Hilfe. Ich bekomme den Fehler, dass die Objektvariable nicht festgelegt ist. Außerdem vermute ich, dass ich im 2. Teil bei master.cells noch sagen müsste, dass er in die Spalte E muss?
Danke vorab und lieben Gruß
Susanne
Anzeige

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA Tabellen zusammenfügen
10.01.2023 15:19:36
Daniel
Hi
wenn, dann so,Variablen brauchst du hier nicht:

Sheets("Query Pzahlen 2022 A3.2").ListObjects("Tabelle8").Range.Copy
Sheets("A3.2").Range("E7").PasteSpecial
Sheets("Query Pzahlen 2021 A3.2").ListObjects("Tabelle4").DataBodyRange.Copy
Sheets("A3.2").Cells(Rows.Count, 5).End(xlUp).Offset(1, 0).PasteSpecial
der Unterschied zwischen "Range" und "DataBodyRange" ist, dass bei Range die Überschriftenzeile mit dabei ist und bei DataBodyRange nicht
und der Fehler, dass man das selbe Tabellenblatt auch immer gleich ansprechen sollte (Sheets("A3.2") vs master) darf auch einem Anfänger auffallen.
Gruß Daniel
Anzeige
AW: VBA Tabellen zusammenfügen
10.01.2023 15:39:13
Susanne
Hallo Daniel,
super, ganz lieben Dank für die Hilfe. Es funktioniert!
Gruß
Susanne
AW: VBA Tabellen zusammenfügen
10.01.2023 15:24:07
onur
Was soll denn bitteschön master sein?
Abgesehen davon: Für die erste Tabelle gibst du an, auif welches Blatt sie kopiert werden soll,. warum nicht auch für die Zweite?
AW: VBA Tabellen zusammenfügen
10.01.2023 15:40:49
Susanne
Hallo,
danke für den Hinweis. Das war auch laut Daniel einer meiner Fehler.
Gruß
Susanne
Anzeige
AW: VBA Tabellen zusammenfügen
10.01.2023 18:00:18
snb

Sub M_snb()
[Table1].Offset(-1).Resize([Table1].Rows.Count + 1).Copy Sheet2.Cells(1)
[Table2].Copy Sheet2.Cells(Rows.Count, 1).End(xlUp).Offset(1)
End Sub

AW: VBA Tabellen zusammenfügen
10.01.2023 18:39:09
ralf_b
der Fehler mit der Objektvariable ist doch noch nicht gelöst ,oder?
eine Objektvariable, also eine Variable, der du ein Objekt( Range, Sheet, usw.) zuweisen möchtest, wird mit der "set" Anweisung initialisiert.
also set sh = Worksheets("Query Pzahlen 2022 A3.2")
objList.ListObjects("Tabelle8") kann auch nicht funktionieren.
So einer Listobjectvariable mußt du auch erst noch einen Inhalt zuweisen.
set objList = sh.listobjects("Tabelle8") einen Inhalt bekommen. dann kannst du sie direkt so nutzen. objList.copy
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige