ich habe ein Problem bei dem mich die Recherche leider nicht weitergebracht hat.
Ich muß in einem Tabellentblatt viele Zeilen löschen und das für eine Liste von Mitarbeitern und nach dem löschen müssen Pivots aktualisiert werden und die Datei anschliessend nach Mitarbeiter gespeichert werden.
Ziel ist es, die Datei je Mitarbeiter nur mit seinen Daten abzuspeichern und zu versenden
Das löschen bekomme ich so hin aber es ist sehr sehr langsam:
Sub B_loeschNot()
Dim JCvariable As String
JCvariable = Worksheets("Namen").Range("A6").Value
'hier müsste die Schleife für jeden Eintrag ab A6 bis A? starten
Sheets("Daten").Select
Call Speed_on
'Macro das aktualisierungen etc, ausschaltet
'** Ermittlung der letzten Zeile in Spalte A
lz = Cells(Rows.Count, 1).End(xlUp).Rows.Row
'** Durchlauf aller Zeilen
For t = lz To 2 Step -1 'Zählung rückwärts bis Zeile 2
'Abfragen, ob in der ersten Spalte der Buchstabe "x" steht
If Cells(t, 4).Value JCvariable Then
Rows(t).Delete Shift:=xlUp
End If
Next t
Call Speed_off
'Jetzt müssten die Pivots refreshed werden
'Jetzt Die Datei unter dem Namen der Variablen JCvariable speichern
'Nächster eintrag in "Namen" ab A6
End Sub
Die Frage ist wie man das für jeden Mitarbeiter macht denn nach dem ersten mal speichern hat man ja nur noch die Daten vom ersten Mitarbeiter?
Es wäre zumindest schon eine große Hilfe, wenn man die Zeilen schneller löschen könnte. Vielleicht geht das auch schneller wenn man mit Autofilter alle selektiert die nicht die Variable sind und dann die gefundenen einfach löscht? Ich weiß aber nicht wie das per Makro geht.
Vielen lieben Dank für Eure Hilfe und viele Grüße Lutz