Hi, I am new to programming and have developed a dashboard of drop down data validation boxes linked to 50 pivot tables which are then linked to multiple charts and graphs. I have used the following macro to update the pivot tables:

Sub UpdatePivot()

Dim NoFilters As Integer
Dim all_flag As Integer
Dim pt As PivotTable
Dim wks As Worksheet
Dim arrFilterName() As String
Dim arrFilterValue() As String
Dim i As Integer

NoFilters = Sheets("filters").Range("A1").Value
all_flag = 0

ReDim arrFilterName(NoFilters)
ReDim arrFilterValue(NoFilters)

For i = 0 To NoFilters - 1
arrFilterName(i) = Sheets("filters").Range("D" & 3 + i).Value
arrFilterValue(i) = Sheets("filters").Range("C" & 3 + i).Value

If arrFilterValue(i) <> "(All)" Then
all_flag = 1
End If
Next i



For i = 0 To NoFilters - 1
For Each wks In ActiveWorkbook.Worksheets
For Each pt In wks.PivotTables
pt.ManualUpdate = True
If pt.PivotFields(arrFilterName(i)).Orientation <> xlPageField Then
pt.PivotFields(arrFilterName(i)).Orientation = xlPageField
End If
If pt.PivotFields(arrFilterName(i)).CurrentPage <> arrFilterValue(i) Then
pt.PivotFields(arrFilterName(i)).CurrentPage = arrFilterValue(i)
End If
pt.ManualUpdate = False
Next pt
Next wks
Next i


however I have been requested to allow the drop downs to select multiple values and then update the pivots and charts.
I have found a macro for allowing the data validation boxes to select multiple values (see below), but I can't work out how to have this translate to update the pivots. Can anyone help? - PLEASE! I'm desperate. Remember I'm new to this and am still using code from others.

Thanks so much!!

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rngDV As Range
Dim oldVal As String
Dim newVal As String
If Target.Count > 1 Then GoTo exitHandler

On Error Resume Next
Set rngDV = Cells.SpecialCells(xlCellTypeAllValidation)
On Error GoTo exitHandler

If rngDV Is Nothing Then GoTo exitHandler

If Intersect(Target, rngDV) Is Nothing Then
'do nothing
Else
Application.EnableEvents = False
newVal = Target.Value
Application.Undo
oldVal = Target.Value
Target.Value = newVal
If Target.Column = 3 Then
If oldVal = "" Then
'do nothing
Else
If newVal = "" Then
'do nothing
Else
Target.Value = oldVal _
& ", " & newVal
End If
End If
End If
End If

exitHandler:
Application.EnableEvents = True
End Sub