Private Sub Worksheet_Change(ByVal Target As Range)
Dim pt As PivotTable
Dim MonitorCell As Range
' this is cell containing the list
Set MonitorCell = Range("Q5")
If Not Intersect(Target, MonitorCell) Is Nothing Then
Set pt = ActiveSheet.PivotTables(1)
pt.PivotSelect MonitorCell.Value, xlLabelOnly
End If
End Sub