Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1484to1488
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Blätter zusammenfassen

Blätter zusammenfassen
01.04.2016 09:51:11
Martin
Hallo zusammen,
nachdem mir hier beim letzten mal schon so super geholfen wurde, hoffe ich, ihr könnt mir noch einmal helfen.
Ich habe für meinen Betrieb eine Stundenaufschreibung angelegt. Hier soll jeder Mitarbeiter im jeweiligen Tabellenblatt seine Tätigkeiten eintragen. Die Blätter sind nach der 4-stelligen Personalnummer benannt und entsprechen alle der gleichen Struktur. Beim Öffnen der Mappe öffnet sich ein Formular, in welches der Mitarbeiter seine Nummer eingibt und bestätigt. Daraufhin wird das ensprechende Blatt selektiert und die erste freie Zeile angesprungen. Soweit funktioniert alles, wie ich mir das vorstelle. Um die Einträge jedoch sinnvoll auswerten zu können, habe ich ein weiteres Blatt "Zusammenfassung" angelegt. Hier sollen automatisch alle Einträge von allen Mitarbeitern zusammengefasst werden. Sprich alle Zeilen sollen in dieses eine Blatt kopiert werden. In den einzelnen Blättern sollen die Zeilen erhalten bleiben.
Ich habe bereits in Excel gesucht, ob es eine solche Funktion bereits gibt, aber bin nicht fündig geworden. Nun wollte ich es in VBA umsetzen. Hierzu habe ich einen Button "Aktualisieren" in die Übersicht eingefügt.
Leider bin ich noch ein ziemlicher Anfänger und komme nicht wirklich zurecht. Kann mir hier vielleicht jemand einen Denkanstoß oder ein Skript zur Orientierung geben. Sicher kann man das doch mit einer while Schleife umsetzen oder?
Die Datei ist unten angehängt.
MFG Martin
https://www.herber.de/bbs/user/104701.xlsm

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Blätter zusammenfassen
01.04.2016 10:28:48
ChrisL
Hi Martin
Sub Mach()
Dim WS1 As Worksheet, WS2 As Worksheet
Dim letzteZeile As Long
Set WS1 = ThisWorkbook.Worksheets("Zusammenfassung")
For Each WS2 In ThisWorkbook.Worksheets
If WS2.Name  WS1.Name And WS2.Name  "Eingabefelder" Then
letzteZeile = WS2.Cells(WS2.Rows.Count, 4).End(xlUp).Row
If letzteZeile > 4 Then _
WS2.Rows("5:" & letzteZeile).Copy WS1.Cells(WS1.Rows.Count, 1).End(xlUp).Offset(1, 0)
End If
Next WS2
End Sub

cu
Chris

AW: Blätter zusammenfassen
01.04.2016 10:40:49
Martin
Wow vielen Dank, habe es bereits ausprobiert. Funktioniert zwar, aber mit jedem Klick werden wieder ALLE Zeilen kopiert. Ich will natürlich nur die, die noch nicht in der Übersicht sind. Ich hatte mir das so vorgestellt, dass in der Spalte "I" in jeder kopierten Zeile ein x eingetragen wird und dass dann nur die Zeilen ohne x kopiert werden.
LG

Anzeige
AW: Blätter zusammenfassen
01.04.2016 10:59:07
ChrisL
Hi Martin
Vielleicht reicht auch...
Sub Mach()
Dim WS1 As Worksheet, WS2 As Worksheet
Dim letzteZeile As Long
Set WS1 = ThisWorkbook.Worksheets("Zusammenfassung")
Application.ScreenUpdating = False
WS1.Rows("5:10000").EntireRow.Delete
For Each WS2 In ThisWorkbook.Worksheets
If WS2.Name  WS1.Name And WS2.Name  "Eingabefelder" Then
letzteZeile = WS2.Cells(WS2.Rows.Count, 4).End(xlUp).Row
If letzteZeile > 4 Then _
WS2.Rows("5:" & letzteZeile).Copy WS1.Cells(WS1.Rows.Count, 1).End(xlUp).Offset(1, 0)
End If
Next WS2
End Sub

cu
Chris

Anzeige
AW: Blätter zusammenfassen
04.04.2016 13:18:53
Martin
Hallo Chris,
vielen Dank. Tut genau das was es soll. Zwar auf anderem Weg, aber damit kann ich leben :D
LG Martin

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige