Erstellen einer dyn. Liste aus mehreren Tabellenblättern
#1
Hallo,

wie der Titel schon verrät, möchte ich aus mehreren Tabellenblättern eine dynamische Tabelle erzeugen.

Das Ganze soll so funktionieren, und überhaupt warum:

Die Daten (Speicherplatzbelegung eines Servers, für den den es interessiert..) werden dokumentiert und ändern sich täglich. Für diese Daten wird pro Tag in einem Workbook ein Tabellenblatt angelegt und dieses nach dem Tag genannt (Format JJJMMTT ohne Punkt). Das funktioniert bisher alles super. 

Mein Problem ist jetzt, dass sich viele verschiedene Nutzer täglich anmelden oder nicht und dann Daten vorhanden sind oder nicht. D.h. dass die Benutzerliste dynamisch ist und ich die maximale Anzahl der Nutzer der Tabellenblätter brauche wenn ich diese miteinander vergleiche aber ich weiß nicht wie..
Ein weiteres Problem ist, dass dann manche Zellen leer seien müssten, je nach dem ob der Nutzer an diesem Tag aktiv war oder nicht.

Die Benutzer sollen in Spalte A angelegt werden und das Datum soll in Zeile 2 aufgetragen werden.

Hier ist das was ich bisher habe, es wird nicht alles richtig oder klug sein, da ich ein Ziemlicher VBA-Neuling bin...


Code:
Public Sub PreInitialize(ByRef Datestring As String) 'DateString ist der
Dim SheetCounter As Long                             'Tabellenblattname
lngWorksheets = ThisWorkbook.Worksheets.Count
Dim rngComp As Integer, rngComp2 As Integer

For SheetCounter = 1 To lngWorksheets
   ThisWorkbook.Sheets("Master").Cells(2, 1 + SheetCounter).Value = ThisWorkbook.Sheets( _
SheetCounter).Name 'datum in tabelle
Next SheetCounter

For j = 1 To 3
   ActiveSheet.Cells(2, lngWorksheets - 1).Select
   If ActiveSheet.Cells(2, lngWorksheets - 1).Value = "Master" Then
       ActiveCell.Delete
   ElseIf ActiveSheet.Cells(2, lngWorksheets - 1).Value = "Stats" Then
       ActiveCell.Delete
   ElseIf ActiveSheet.Cells(2, lngWorksheets - 1).Value = "Filter" Then
       ActiveCell.Delete
   Else
           'NOP
   End If
Next j

rngComp = Workbooks("History_ServerUse.xlsm").Worksheets(Datestring).Cells(Rows.Count, 1).End( _
xlUp).Row
rngComp2 = Workbooks("History_ServerUse.xlsm").Worksheets(Datestring).Cells(Rows.Count, 1).End( _
xlUp).Row
If rngComp - 3 > rngComp2 - 3 Then
   rngComp2 = Workbooks("History_ServerUse.xlsm").Worksheets(Datestring).Cells(Rows.Count, 1). _
End(xlUp).Row
Esle
   rngComp = Workbooks("History_ServerUse.xlsm").Worksheets(Datestring).Cells(Rows.Count, 1). _
End(xlUp).Row
End If

End Sub
Top
#2
Hallo,

diejenigen die sich für das Thema interessieren können auch hier einen Blick darauf werfen:

http://www.herber.de/forum/messages/1510573.html
http://www.office-fragen.de/index.php/board,82.0.html

@Tim: Lies dir mal bitte diesen Beitrag durch.
Gruß
Peter
Top
#3
Hallo Tim,

bitte verlinke deine Beiträge in den verschiedenen Foren untereinander. Dann kann sich jeder Helfer orientieren, wie weit die Hilfe bereits gediehen ist. Siehe auch hier: http://www.clever-excel-forum.de/thread-3037.html
Gruß Günter
Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen.
angebl. von Georg Christoph Lichtenberg (1742-1799)
Top
#4
Verzeihung, ich bin auch noch ein Neuling in Foren :19:
Top


Gehe zu:


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