Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

aus mehreren Tabellenblätter eine Tabelle zusammenfügen
#11
Ja, und dabei habe ich mir auch meine momentane Grippe zugezogen. :@
Beste Grüße
  Günther

Excel-ist-sexy.de
  …schau doch mal rein!
Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
Antworten Top
#12
Das Problem wurde in der Zwischenzeit gelöst.
Danke für die Meldungen!

LG Ubi5
Antworten Top
#13
Hallo an alle,

Antwort und Frage an Euch:

Ich hatte auch das Problem, dass ich verschiedene Tabellenblätter mit gleichartiger Struktur in ein neues Tabellenblatt "Gesamt" konsolidieren wollte.

Ich habe keine VBA Erfahrung, habe aber zwei funktionierende Codes dazu gefunden.

Alternative A:

Das ist ganz elegant, man weiss aber nicht aus welchem Ursprungsblatt die Daten kommen.

Sub BlätterKonsolidieren()

If Not Sheets(1).Name = "Gesamt" Then
    Sheets.Add before:=Sheets(1)
    Sheets(1).Name = "Gesamt"
Else
    Sheets("Gesamt").Cells.Clear
End If
Sheets(2).Rows(1).Copy Sheets("Gesamt").Cells(1, 1)

For i = 2 To Sheets.Count
    lr = Sheets("Gesamt").Cells(Rows.Count, "A").End(xlUp).Row + 1
    Sheets(i).UsedRange.Offset(1).Copy Sheets("Gesamt").Cells(lr, "A")
Next i

End Sub

Alternative B:
Das hat den Vorteil, dass der Name der Ursprungsblätter in Spalte A kopiert wird. Da kann man auch eine Pivottabelle erstellen.
Es fehlen die Überschriften. Ausserdem wirkt es etwas komplizierter.

Sub Konsolidieren2()

'Konsolidierung ohne Überschriften ( Zeile 1 )
'In Spalte A wird der Name der Herkunfttabelle gelistet
Dim Wks As Worksheet
Dim Bereich As Range
Dim strLC As String
Dim i As Integer
Dim lngA As Long
Dim lngE As Long

Set Wks = Worksheets.Add
Wks.Name = "Gesamt"

For i = 2 To Worksheets.Count
 With Worksheets(i).UsedRange
  strLC = .Cells(.Rows.Count, .Columns.Count).Address
  Set Bereich = .Range("A2:" & strLC)
  lngA = Wks.Cells(Rows.Count, 1).End(xlUp).Row + 1
  lngE = Bereich.Rows.Count
  Wks.Range("A" & lngA & ":A" & (lngE + lngA - 1)) = Worksheets(i).Name
  Bereich.Copy Destination:= _
  Wks.Cells(Rows.Count, 2).End(xlUp).Offset(1, 0)
 End With
Next i
End Sub


Weiß jemand, wie man die den Namen der Ursprungsblätter in den ersten Code integrieren kann? Huh
Antworten Top
#14
Hallöchen,

der Name ist einfach nur Sheets(i).Name. Nun wäre die Frage, wo das hin soll...

Eventuell
Sheets("Gesamt").Cells(lr, "A") = Sheets(i).Name
und dann in der Zeile mit dem Copy nimmst Du ...lr+1,"A"...
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste