Ich habe ein Problem.Ich habe einen erweiterten Filter in meinem Makro gesetzt, aber wenn ich zum Beispiel Szenario 2, 3, 4 auswählen möchte, ist auch 402, 403, 404, wenn ich nur das spezifische Szenario will, nicht das 2,3,4 enthält, hier ist mein Code unten. Schätzen Sie alle help.TksFilter spezifischen Wert, nicht, dass der Wert enthält VBA
Sub Filtering()
'
' AdvencedFilterNew Macro
'
Dim WsOutput As Worksheet
Dim WsMain As Worksheet
Dim WsScenarios As Worksheet
Dim ScenarioIDrow As Long
Dim ScenarioIDColumn As Long
Dim rgn As Range
Dim p As String
Dim q As String
Dim f As Range
Set WsOutput = Worksheets("Output")
Set WsMain = Worksheets("Main Menu")
Set WsScenarios = Worksheets("Scenarios")
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Application.DisplayStatusBar = True
WsOutput.Activate
Cells.EntireColumn.Hidden = False
WsMain.Activate
Range("F15").Select
Range("F17:H1000").AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:= _
Range("F14:H15"), Unique:=False
ScenarioIDrow = WsOutput.Cells.Find("Scenario ID").row
ScenarioIDColumn = WsOutput.Cells(ScenarioIDrow, Columns.Count).End(xlToLeft).Column
p = WsOutput.Cells(ScenarioIDrow, 2).Address(RowAbsolute:=False, ColumnAbsolute:=False)
q = WsOutput.Cells(ScenarioIDrow, ScenarioIDColumn).Address(RowAbsolute:=False, ColumnAbsolute:=False)
WsOutput.Activate
WsOutput.Range(p, q).Select
Set f = selection.Find(What:=Worksheets("Main Menu").Range("G15").Value, After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False)
For Each rgn In selection
If f Is Nothing Then
rgn.EntireColumn.Hidden = False
ElseIf rgn = f Then
rgn.EntireColumn.Hidden = False
Else
rgn.EntireColumn.Hidden = True
End If
Next rgn
WsMain.Activate
WsMain.Range("F15").Select
End Sub
Wo sagt Range ("G15"). Wertdaten gefiltert werden.
Können Sie teilen, was die Kriterien? – Vinnie
Bereich ("F14: H15"), Unique: = False hier ist das Kriterium. –