Collapse column

Autor Thema: Office 2013: Filter - mehrere Kriterien - mehrere Sheets  (Gelesen 498 mal)

Offline Jolie

  • Newbie
  • *
  • Beiträge: 2
    • Profil anzeigen
  • Office-KnowHow: Fortgeschritten
  • VBA-KnowHow- : Mittelmäßig
  • Version [Office] : Office 2013
Office 2013: Filter - mehrere Kriterien - mehrere Sheets
« am: Februar 22, 2017, 14:35:08 Nachmittag »
 Hallo an Alle,

ich hoffe ihr könnt mir bei meiner Aufgabe helfen, komme leider nicht mehr voran... Es geht um die Stundenmeldungen von Mitarbeitern. Meine Arbeitsmappe besteht aus den Blättern (siehe Anhang Datei) :
- Übersicht mit Button 1 -> erstelle neuen Mitarbeiter und Button 2-> Starte Übertragung
- Muster Mitarbeiter -> Beim Betätigen vom Button 1 ensteht immer ein neues Blatt nach dem Blattt Muster MA
- Januar - Dezember mit fast derselben Tabelle wie in Muster MA
- TD
Das Blatt Muster MA beinhaltet eine Tabelle zur Stundenmeldung. Angegeben werden Kostenstelle, Projektname mit dem Anfang "OV" oder "IV" oder "DV" oder "TD", ob das Projekt bereits gebucht wurde mit dem Zeichen "X", Datum, Monat, Text, etc.
Wenn nun die Mitarbeiter ihre Projekte eintragen und diese mit dem "X" als gebucht markieren, soll mit dem Klick auf "Starte Übertragung" (Sheet "Übersicht") die Filterung/Kopie stattfinden.
Alle gebuchten Zeilen mit den Projekten "IV" oder "OV" oder "DV" sollen in die entsprechenden Monatsblätter kopiert werden. Alle Projekte mit "TD" in das Sheet "TD".
Diese Übertragung sollte nach Datum sortiert werden und mit einem Klick für alle Mitarbeiter Blätter aufeinmal automatisch funktionieren.

Leider bin ich nicht besonders gut in VBA. Habe so einiges ausprobiert. Ich denke man müsste eine Schleife für alle Monate und alle Mitarbeiter bilden. Mein letzter Ansatz war folgender:

Sub test()
Dim a As Long, i As Long
Application.ScreenUpdating = False
a = 2
For i = 1 To 10000
With Worksheets(Mitarbeiter)
If .Cells(i, "D") = "OV" And .Cells(i,"A")="X" And .Cells(i,"K")="Januar" Then
.Rows(i).Copy _
Destination:=Worksheets("Januar").Rows(a)
a = a + 1
End If
End With
Next i
Application.ScreenUpdating = True
End Sub

Das sollte natürlich bei einem Klick für alle Mitarbeiter alle Monate aufeinmal funktionieren....
Wäre dankbar über jede Hilfe :)

Liebe Grüße
Jolie
« Letzte Änderung: Februar 22, 2017, 16:26:16 Nachmittag von Jolie »

Keine Lösung gefunden? Du kannst Dich gerne an unser erfahrenes Experten-Team wenden und Dein Anliegen in Auftrag geben.
>>> Schnell und einfach ein unverbindliches Angebot anfordern. Per E-Mail an anfrage@excel-inside.de oder per Online-Formular
<<<

!!! Wichtige Information
!!! Dieses Forum steht aus technischen Gründen ab dem 11. September 2019 nur noch im Lesemodus zur Verfügung.
Das NEUE Office-Fragen-Forum kannst du aber unter der gewohnten Domain https://office-fragen.de wie gewohnt nutzen.

- Wir freuen uns auf deinen Besuch im neuen Forum.