Hallo,
Ik ben al een poosje aan het puzzelen hoe ik het onderstaande kan versnellen.
Het doel is om bepaalde project nummers te selecteren die tot een bepaalde categorie behoren.
De geselecteerde project nummers bepalen uiteindelijk de waardes die in een Pivottable komen te staan.
De code die ik momenteel gebruik werkt wel, maar is erg traag.
Heeft iemand een goede tip hoe ik dit kan herschrijven?
Sub DevAll()
' DevAll Macro
ActiveWorkbook.SlicerCaches("Slicer_Project_Number").ClearManualFilter
Dim oSlicerItem As SlicerItem
Dim vItems As Variant
Dim vMatchVal As Variant
Application.ScreenUpdating = False
' Project Number Selection
vItems = Array("951", "1031", "1091", "10123", "1211")
With ActiveWorkbook.SlicerCaches("Slicer_Project_Number")
.ClearManualFilter
For Each oSlicerItem In .SlicerItems
vMatchVal = Application.Match(oSlicerItem.Name, vItems, 0)
If IsError(vMatchVal) Then
oSlicerItem.Selected = False
End If
Next oSlicerItem
End With
' Enables screen refreshing.
Application.ScreenUpdating = True
End Sub
Ik ben al een poosje aan het puzzelen hoe ik het onderstaande kan versnellen.
Het doel is om bepaalde project nummers te selecteren die tot een bepaalde categorie behoren.
De geselecteerde project nummers bepalen uiteindelijk de waardes die in een Pivottable komen te staan.
De code die ik momenteel gebruik werkt wel, maar is erg traag.
Heeft iemand een goede tip hoe ik dit kan herschrijven?
Sub DevAll()
' DevAll Macro
ActiveWorkbook.SlicerCaches("Slicer_Project_Number").ClearManualFilter
Dim oSlicerItem As SlicerItem
Dim vItems As Variant
Dim vMatchVal As Variant
Application.ScreenUpdating = False
' Project Number Selection
vItems = Array("951", "1031", "1091", "10123", "1211")
With ActiveWorkbook.SlicerCaches("Slicer_Project_Number")
.ClearManualFilter
For Each oSlicerItem In .SlicerItems
vMatchVal = Application.Match(oSlicerItem.Name, vItems, 0)
If IsError(vMatchVal) Then
oSlicerItem.Selected = False
End If
Next oSlicerItem
End With
' Enables screen refreshing.
Application.ScreenUpdating = True
End Sub