2017-03-06 4 views
0

Ich mag würde eine Variable als eine Säule für Autofilter in vba verwenden, ich glaube, ich bin nicht der sintax richtig hinzubekommen, weil es `s nicht funktioniert:als Säule für Autofilter (VBA) verwenden variable

With ActiveSheet 
.AutoFilterMode = False 
With .Range("A1:" & LastCol + 1 & "1") 
.AutoFilter 
.AutoFilter field:=5, Criteria1:="Approved" 
.AutoFilter field:=6, Criteria1:="Open" 
.AutoFilter field:=LastCol + 1, Criteria1:="1" 
End With 
End With 
+0

ist LASTCOL definiert? – Matts

+0

Dim LastCol als Integer Mit ActiveSheet LastCol = .Cells (1, .Columns.Count) .End (xlToLeft) .Column Ende mit – karips

+1

Es benötigt den Buchstaben für diese Syntax anstelle von Ganzzahl. "A1:" & LastCol + 1 & "1" – Matts

Antwort

1

Wenn es keine leeren Spalten sind, können Sie die CurrentRegion verwenden stattdessen (ähnlich einem Strg + A in A1)

ActiveSheet.AutoFilterMode = False 
With Cells.CurrentRegion 
    .AutoFilter 5, "Approved" 
    .AutoFilter 6, "Open" 
    .AutoFilter .Columns.Count, "1" 
End With 
Verwandte Themen