Beste forumleden,
Ik ben al enige tijd bezig met het opzetten van een macro om de filter van een slicer te beinvloeden. De bedoeling is dat als ik in bijvoorbeeld cel a2 sta dat de filter van de slicer op die waarde gaat filteren. En als ik op a3 sta dan die waarde etc. Het is dus NIET te bedoeling om meerdere filter selecties te gebruiken.
Ik heb hiervoor onderstaande code gemaakt
[CPP]Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Range("B5"), Target) Is Nothing Then
With Range("b5")
With ActiveWorkbook.SlicerCaches("Slicer_Costs_sort")
.ClearManualFilter
.SlicerItems("Accomodation costs").Selected = True
.SlicerItems("Car costs").Selected = False
.SlicerItems("Commissions").Selected = False
.SlicerItems("Depreciation").Selected = False
.SlicerItems("Freight").Selected = False
.SlicerItems("General expenses").Selected = False
.SlicerItems("Insurance costs").Selected = False
.SlicerItems("Interest").Selected = False
.SlicerItems("Legal & Proffesional").Selected = False
.SlicerItems("Office costs").Selected = False
.SlicerItems("Personnel costs").Selected = False
.SlicerItems("R&D + Ind. Prod.").Selected = False
.SlicerItems("Repair and Maintenance").Selected = False
.SlicerItems("Selling costs").Selected = False
.SlicerItems("Travelling").Selected = False
.SlicerItems("Undefined").Selected = False
.SlicerItems("(leeg)").Selected = False
End With
End With
End If
If Intersect(Range("B6"), Target) Is Nothing Then
With Range("b6")
With ActiveWorkbook.SlicerCaches("Slicer_Costs_sort")
.ClearManualFilter
.SlicerItems("Accomodation costs").Selected = False
.SlicerItems("Car costs").Selected = True
.SlicerItems("Commissions").Selected = False
.SlicerItems("Depreciation").Selected = False
.SlicerItems("Freight").Selected = False
.SlicerItems("General expenses").Selected = False
.SlicerItems("Insurance costs").Selected = False
.SlicerItems("Interest").Selected = False
.SlicerItems("Legal & Proffesional").Selected = False
.SlicerItems("Office costs").Selected = False
.SlicerItems("Personnel costs").Selected = False
.SlicerItems("R&D + Ind. Prod.").Selected = False
.SlicerItems("Repair and Maintenance").Selected = False
.SlicerItems("Selling costs").Selected = False
.SlicerItems("Travelling").Selected = False
.SlicerItems("Undefined").Selected = False
.SlicerItems("(leeg)").Selected = False
End With
End With
End If
End Sub
[/CPP]
De code werkt alleen nog niet goed omdat de juiste selecties niet worden gemaakt. Ik snap hier echter niks van want naar mijn weten moet de code kloppen. Kan iemand mij helpen?
Bedankt.
Ik ben al enige tijd bezig met het opzetten van een macro om de filter van een slicer te beinvloeden. De bedoeling is dat als ik in bijvoorbeeld cel a2 sta dat de filter van de slicer op die waarde gaat filteren. En als ik op a3 sta dan die waarde etc. Het is dus NIET te bedoeling om meerdere filter selecties te gebruiken.
Ik heb hiervoor onderstaande code gemaakt
[CPP]Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Range("B5"), Target) Is Nothing Then
With Range("b5")
With ActiveWorkbook.SlicerCaches("Slicer_Costs_sort")
.ClearManualFilter
.SlicerItems("Accomodation costs").Selected = True
.SlicerItems("Car costs").Selected = False
.SlicerItems("Commissions").Selected = False
.SlicerItems("Depreciation").Selected = False
.SlicerItems("Freight").Selected = False
.SlicerItems("General expenses").Selected = False
.SlicerItems("Insurance costs").Selected = False
.SlicerItems("Interest").Selected = False
.SlicerItems("Legal & Proffesional").Selected = False
.SlicerItems("Office costs").Selected = False
.SlicerItems("Personnel costs").Selected = False
.SlicerItems("R&D + Ind. Prod.").Selected = False
.SlicerItems("Repair and Maintenance").Selected = False
.SlicerItems("Selling costs").Selected = False
.SlicerItems("Travelling").Selected = False
.SlicerItems("Undefined").Selected = False
.SlicerItems("(leeg)").Selected = False
End With
End With
End If
If Intersect(Range("B6"), Target) Is Nothing Then
With Range("b6")
With ActiveWorkbook.SlicerCaches("Slicer_Costs_sort")
.ClearManualFilter
.SlicerItems("Accomodation costs").Selected = False
.SlicerItems("Car costs").Selected = True
.SlicerItems("Commissions").Selected = False
.SlicerItems("Depreciation").Selected = False
.SlicerItems("Freight").Selected = False
.SlicerItems("General expenses").Selected = False
.SlicerItems("Insurance costs").Selected = False
.SlicerItems("Interest").Selected = False
.SlicerItems("Legal & Proffesional").Selected = False
.SlicerItems("Office costs").Selected = False
.SlicerItems("Personnel costs").Selected = False
.SlicerItems("R&D + Ind. Prod.").Selected = False
.SlicerItems("Repair and Maintenance").Selected = False
.SlicerItems("Selling costs").Selected = False
.SlicerItems("Travelling").Selected = False
.SlicerItems("Undefined").Selected = False
.SlicerItems("(leeg)").Selected = False
End With
End With
End If
End Sub
[/CPP]
De code werkt alleen nog niet goed omdat de juiste selecties niet worden gemaakt. Ik snap hier echter niks van want naar mijn weten moet de code kloppen. Kan iemand mij helpen?
Bedankt.