Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Spalten mit Makro zusammenführen

Spalten mit Makro zusammenführen
27.01.2022 09:04:21
Andi
Guten Morgen liebe Excel-Community,
bräuchte bitte Eure Hilfe. Hab zwar unterschiedliche Codes schon dazu gefunden, aber irgendwie passen die dann doch nicht zu meinem Problem.
Hintergrund: In der beiliegenden Datei gibt es insg. 3 Tabellenblätter. In 2 davon (Tabelle 1 und 2) stehen sowohl die P-Nummer als auch die Namen.
Im 3. Tabellenblatt (Zusammenführen) möchte ich nun mit dem Button "zusammenführen" die beiden Tabellen 1 und 2 miteinander verschmelzen, sodaß dann die P-Nummern und die Namen der beiden Tabellen in diesem Tabellenblatt untereinander stehen.
Die Tabellen 1 und 2 sollen erhalten bleiben und können sich täglich ändern.
https://www.herber.de/bbs/user/150707.xlsm
Könnt Ihr mir bitte helfen?
Vielen Dank
Schöne Grüße
Andi
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Spalten mit Makro zusammenführen
27.01.2022 10:04:25
Oli
Hallo Andi,
ich würde das über das Daten-Menü und PowerQuery zusammenführen. Damit löst man auch das Problem der variablen Tabellenlänge.
Grüße
Oliver
AW: Spalten mit Makro zusammenführen
27.01.2022 10:14:36
UweD
Hallo
so?

Sub Tabellenblätter_zusammenführen()
Dim LR As Long, LRZ As Long, TBZ As Worksheet, TB As Worksheet
Dim TMP As Integer
Set TBZ = Sheets("Zusammenführen")
'Reset
TBZ.UsedRange.Clear
For Each TB In ThisWorkbook.Worksheets
If TB.Name  TBZ.Name Then
LR = TB.Cells(TB.Rows.Count, "A").End(xlUp).Row
If TMP  1 Then 'Überschrift beim ersten Durchlauf
TB.Rows(1).Copy TBZ.Rows(1)
End If
LRZ = TBZ.Cells(TBZ.Rows.Count, "A").End(xlUp).Row + 1 ' Einfügezeile
TB.Rows(2).Resize(LR).Copy TBZ.Rows(LRZ)
TMP = 1
End If
Next
End Sub
LG UweD
Anzeige
AW: Spalten mit Makro zusammenführen
27.01.2022 17:39:36
Andi
Hallo UweD,
jetzt war ich doch etwas zu schnell. Hab Deinen Code getestet und auf meiner privaten Datei funktioniert er perfekt.
Jetzt wollte ich diesen in die Datei in meiner Arbeit einbauen und bekomm nun den Laufzeitfehler 9 (Index außerhalb des gültigen Bereichs)
Hinweis: In der "Arbeits-Datei" befinden sich mehrere Tabellenblätter und auch noch welche, die ausgeblendet sind.
Nun aber zu meiner konkreten Frage: Wäre es möglich, Deinen Code so umzuschreiben, daß ich die Arbeitsblätter (die verschmolzen werden sollen) direkt anspreche? In meinem Bespiel wären es Tabelle 1 und 2.
Schon mal Danke für Deine Hilfe und sorry, aber ich bin noch neu auf dem Gebiet.
Schöne Grüße
Andi
Anzeige
AW: Spalten mit Makro zusammenführen
27.01.2022 18:22:09
GerdL
Moin Andi!
Es spricht viel dafür, dass du kein Zusammenführen-Tabellenblatt in der Datei auf Arbeit hast, oder dieses ggf. nur leicht abweichend benannt hast.
Gruß Gerd
AW: Spalten mit Makro zusammenführen
27.01.2022 18:46:16
Andi
Oh Mann, da hast du natürlich recht.
Aber nun passiert eins, daß der Code auch andere Tabellenblätter einfügt und sich nicht auf bestimmte Seiten beschränkt.
Hast du eine Idee, wie ich nur bestimmte Seiten anspreche?
Danke dir
Anzeige
AW: Spalten mit Makro zusammenführen
27.01.2022 18:53:54
GerdL
Eine Möglichkeit:

Sub Tabellenblätter_zusammenführen()
Dim LR As Long, LRZ As Long, TBZ As Worksheet, TB As Worksheet
Dim TMP As Integer
Set TBZ = Sheets("Zusammenführen")
'Reset
TBZ.UsedRange.Clear
For Each TB In ThisWorkbook.Worksheets
Select Case TB.Name
Case "EIN", "Tabelle5", "Sieben"
LR = TB.Cells(TB.Rows.Count, "A").End(xlUp).Row
If TMP  1 Then 'Überschrift beim ersten Durchlauf
TB.Rows(1).Copy TBZ.Rows(1)
End If
LRZ = TBZ.Cells(TBZ.Rows.Count, "A").End(xlUp).Row + 1 ' Einfügezeile
TB.Rows(2).Resize(LR).Copy TBZ.Rows(LRZ)
TMP = 1
End Select
Next
End Sub
Gruß Gerd
Anzeige
AW: Spalten mit Makro zusammenführen
27.01.2022 19:03:08
Andi
Vielen Dank, werde es morgen gleich ausprobieren. Nur eine "Lernfrage" für mich noch:
Was bedeutet: Case "Ein", "Tabelle 5", "Sieben"?
Danke
Schönen Abend
AW: Spalten mit Makro zusammenführen
27.01.2022 20:59:41
ralf_b

Select Case TB.Name
Case "EIN", "Tabelle5", "Sieben"
Case prüft den Ausduck TB.Nname auf die drei Werte. Wenn einer der drei Werte zutrifft, wird der Code in dem Caseblock abgearbeitet.
Anzeige
AW: Spalten mit Makro zusammenführen
27.01.2022 21:14:15
Andi
Super... vielen Dank. Wieder was gelernt :-)
Singen Abend
;

Forumthreads zu verwandten Themen

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