VBA optimieren
03.01.2017 19:23:41
Fred
es geht um folgendes;
1.) Von Sheet Liste1 entferne ich alle Filterfunktionen in Sheet Sp1.
2.) Es werden alle Werte in Sp1 / Bereich I6:BH5000 entfernt.
3.) Es wird in Liste1 von A6 : AZ bis zur letzten Zeile mit Inhalt kopiert
4.) Es wird in Sp1 / Spalte I ab der 6 Zeile eingefügt
Dim wks As Worksheet
Set wks = ActiveWorkbook.Worksheets("Sp1")
With wks
' prüft ob Filterfunktionen vorhanden sind, zeigt alle Daten
If .AutoFilterMode Then
If .FilterMode Then .ShowAllData
End If
End With
Worksheets("Sp1").Range("I6:BH5000").ClearContents
Dim loLetzte As Long
loLetzte = ThisWorkbook.Worksheets("Sp1").Cells(Rows.Count, 1).End(xlUp).Row
Application.ScreenUpdating = False
If loLetzte = 1 Then
loLetzte = 2
Else
loLetzte = loLetzte + 1
End If
With ThisWorkbook.Worksheets("Liste1")
.Range(.Cells(6, 1), .Cells(.UsedRange.Rows.Count + 1, 52)).Copy
Sheets("Sp1").Cells(loLetzte, 9).PasteSpecial Paste:=xlPasteValues
End With
Application.CutCopyMode = False
Meine Anfrage;Ich habe weitere 24 Blatt (von Sp1 bis Sp25) bei denen ich selben Vorgang ausführen will. Der Ansatz ist, das ich 25 Codes entsprechend schreibe.
Kann man dies in einem VBA unterbringen, so das in den 25 Blatt die Filterfunktionen ausgeschaltet werden, und entsprechender Bereich in Liste1 in alle Tabellenblätter (mit Anfang Sp) kopiert wird?
Gruß
Fred