Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Einzelne Datenblätter in einem großen Datenblatt zusammenfassen





Frage

Ich grüße die Excelexperten dieses Forums !!!!! Ich habe mal wieder ein Problem und bitte deshalb die Experten einmal mehr um Rat. Ich habe drei Excel-Dateien: Anton, Berta und Charlie. Die enthaltenen Blätter in den Dateien sind wie folgt benannt: Anton-2006, Berta-2006, Charlie-2006. Bei den Namen Anton, Berta und Charlie handelt es sich um Gruppen, die aus mehreren Personen bestehen. So darf ein bestimmter Personenkreis nur die Datei Anton, ein anderer Kreis nur die Datei Berta und wiederum ein anderer nur die Datei Charlie öffnen und bearbeiten. Der Zugriff wird über die Benutzernamen beschränkt. Ein vierter Personenkreis darf jedoch alle Daten der drei Dateien einsehen. Hierzu möchte ich deshalb die drei WorkSheets in einer Datei vereinigen, so dass der vierte Personenkreis jeweils nur diese eine Datei öffnen braucht. Da die drei Dateien jedoch täglich geändert werden, muss sichergestellt sein, dass die vierte Datei mit den vereinigten WorkSheets beim Öffnen jeweils aktualisiert wird. Formatierungen, Attributierung sowie Rahmen aller Art sollen mit übernommen werden. Muss ich wirklich die Daten in der vierten Datei verknüpfen oder gibt es die Möglichkeit, die drei WorkSheets in die vierte Datei zu kopieren? Vielen Dank für eure Mühe im voraus. Gruß Roland

Antwort 1 von nighty

hi roland :)

eine variante :))

gruss nighty

sheet 1 was bei jedem öffnen der datei neu beschrieben wird dient der zusammenfassung von sheet 2 - 4

1 zeile eventuelle ueberschriften daher zeile 2 generell beginnend

Private Sub Workbook_Open()
Dim zeile As Long
Dim zeile1 As Long
Dim tabellen As Integer
Sheets(1).Range("A2:IV65535").Clear
For tabellen = 2 To 4
zeile = Sheets(1).UsedRange.SpecialCells(xlCellTypeLastCell).Row
zeile1 = Sheets(tabellen).UsedRange.SpecialCells(xlCellTypeLastCell).Row
Sheets(tabellen).Range("A2:A" & zeile1).Copy Range("A" & Sheets(1).UsedRange.SpecialCells(xlCellTypeLastCell).Row + 1)
Next tabellen
End Sub

Antwort 2 von rolakon

Hallo nighty,

sorry, dass ich mich jetzt erst melde. Habe es gestern nicht mehr geschafft. Habe deinen Vorschlag angepasst. Danke. Klappt bestens...........;.))


Gruß Roland