Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1508to1512
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

Filtern mit VBA

Filtern mit VBA
25.08.2016 10:08:40
Tim
Hallo liebe Excel Freunde,
mein Problem ist folgendes:
Ich habe auf mehreren Tabellenblättern eine Liste mit Benutzern und Zeit, die sie auf einem Server verbringen (immer gleicher Aufbau).
ich möchte gerne per VBA eine Historie erstellen, mit der man die Zeit auf die Tage verteilt sieht. Dazu habe ich ein Mastersheet erstellt in das die ganzen Tage mit den Zeiten hineinkopiert werden. Da aber nicht jeder jeden Tag auf dem Server ist, bleiben manche Benutzer an bestimmten Tagen leer und auch und sie bekommen keinen Eintrag.
Mit der Kopierfunktion die ich geschrieben habe (durchsucht alle Tabellenblätter nach Nutzern und fügt sie auf das Mastersheet ein), passiert es mir, dass die Benutzer auf dem Mastersheet (Spalte A) an einem bestimmten Datum (Zeile 2) einen Eintrag haben, aber nicht auf dem Server waren (auf dem Tabellenblatt für den jeweiligen tag kann man das erkennen).
Hat jemand eine Idee wie ich das Filtern kann? Die Historie ist dynamisch und das ist das was mit so den Kopf zerbricht...
Ich danke schon vielmals im Vorraus!!!!
Public Sub vAppCompare(ByRef Date_string As String)
Dim cntr As Integer, counter As Integer, count As Integer, rowcounter As Integer
Dim srchVal As String, trgVal As String
rowcounter = ThisWorkbook.Worksheets("Master").Cells(Rows.count, 1).End(xlUp).Row
For cntr = 0 To ThisWorkbook.Worksheets.count
iter1 = 2
While iter1  nummer And Sheets("Master").Cells(iter2, "A" _
_
)  ""
iter2 = iter2 + 1
Wend
Sheets("Master").Cells(iter2, "A") = nummer
iter1 = iter1 + 1
Wend
Next cntr
For counter = 0 To ThisWorkbook.Worksheets("Master").Cells(Rows.count, 1).End(xlUp).Row
srchVal = ThisWorkbook.Worksheets("Master").Cells(counter + 3, 1).value
For count = 0 To rowcounter
trgVal = ThisWorkbook.Worksheets(Date_string).Cells(count + 4, 6)                        _
_
If trgVal = srchVal Then
ThisWorkbook.Worksheets(Date_string).Activate
ThisWorkbook.Worksheets(Date_string).Range("F" & count + 4).Select
ThisWorkbook.Worksheets("Master").Cells(counter + 3, 2).value = ActiveCell.Offset(,  _
_
-3).value
Else
End If
Next count
Next counter
End Sub

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Beispieldatei?
25.08.2016 13:16:04
Michael
Hi Tim,
auf dem Tabellenblatt für den jeweiligen tag kann man das erkennen
Du vielleicht, aber wir nicht ohne Datei...
Anonymisiere das Ding halt mal und lade es hoch; das Makro kommt mir durchaus optimierbar vor (um es vorsichtig auszudrücken).
Schöne Grüße,
Michael
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige