EXCEL Makro Laufzeitfehler 438 auf neuem PC
31.10.2024 12:07:32
XCow
da ich in Excel immer wieder die gleiche Auswertung machen muss, wollte ich hierfür ein Makro aufzeichnen und habe dies auch über die Funktion „Makro aufzeichnen“ getan.
Durch das Makro werden zunächst einige nicht benötigte Spalten gelöscht.
Dann wird in einer Spalte nach bestimmten Inhalten gefiltert.
Im Anschluss sollen die nun angezeigten Zeilen über die Spalte G von Klein nach Groß sortiert werden.
Dies habe ich so als Makro aufzeichnen lassen und an meinem Laptop funktioniert das auch ohne Probleme. Habe es bereits für zahlreiche Excellisten benutzt.
Nun habe ich das Makro auf einen anderen PC kopiert und erhalte bei der Ausführung immer den Fehler „Laufzeitfehler: 438 - Objekt unterstützt diese Eigenschaft oder Methode nicht“
Auf beiden PCs läuft Windows 10 und Office 2016.
Beim Debuggen wird mir immer dieser Befehl als Fehlerquelle angezeigt:
ActiveWorkbook.Worksheets("Listenauswertung_Transaktionen").AutoFilter.Sort. _
SortFields.Add2 Key:=Range("G1:G6206"), SortOn:=xlSortOnValues, Order:= _
xlAscending, DataOption:=xlSortNormal
Hier auch nochmal der gesamte Code:
Sub Kontozu_und_abflüsse()
'
' Kontozu_und_abflüsse Makro
'
'
Columns("C:C").Select
Selection.Delete Shift:=xlToLeft
Selection.Delete Shift:=xlToLeft
Selection.Delete Shift:=xlToLeft
Columns("D:D").Select
Selection.Delete Shift:=xlToLeft
Columns("E:E").Select
Selection.Delete Shift:=xlToLeft
Selection.Delete Shift:=xlToLeft
Columns("G:G").Select
Selection.Delete Shift:=xlToLeft
Columns("H:H").Select
Selection.Delete Shift:=xlToLeft
Selection.Delete Shift:=xlToLeft
Columns("A:A").EntireColumn.AutoFit
Columns("A:A").ColumnWidth = 39
Columns("B:B").EntireColumn.AutoFit
Columns("C:C").EntireColumn.AutoFit
Columns("D:D").EntireColumn.AutoFit
Columns("E:E").EntireColumn.AutoFit
Columns("E:E").ColumnWidth = 51.71
Columns("F:F").EntireColumn.AutoFit
Columns("G:G").EntireColumn.AutoFit
Range("A1").Select
Selection.AutoFilter
ActiveSheet.Range("$A$1:$G$6206").AutoFilter Field:=6, Criteria1:=Array( _
"Dauerauftrag", "SEPA-Lastschrift", "SEPA-Überweisung"), Operator:= _
xlFilterValues
ActiveWorkbook.Worksheets("Listenauswertung_Transaktionen").AutoFilter.Sort. _
SortFields.Clear
ActiveWorkbook.Worksheets("Listenauswertung_Transaktionen").AutoFilter.Sort. _
SortFields.Add2 Key:=Range("G1:G6206"), SortOn:=xlSortOnValues, Order:= _
xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Listenauswertung_Transaktionen").AutoFilter. _
Sort
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
ActiveSheet.Range("$A$1:$G$423").AutoFilter Field:=1, Criteria1:= _
">*UNIKAT*", _
Operator:=xlAnd
End Sub
Ich bin noch ganz neu im Thema VBA und wurde über Google leider nicht schlau.
Weiß vielleicht einer von euch woran das liegen könnte?
Vielen Dank für eure Hilfe!
VG
Markus
Anzeige