For anyone else who may want to do this:
I use an intersect event so that when the field is modified, it automatically calls a routine to update the field in the pivot table. The intersect event is on the Worksheet where the pivot table is located.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("MonthTr")) Is Nothing Then
Run "StateSales"
Else
Exit Sub
End If
End Sub
Sub StateSales()
With ActiveSheet.PivotTables("PvtMonthTax").PivotFields("Month")
.ClearAllFilters
.PivotFilters.Add Type:=xlCaptionEquals, Value1:=ActiveSheet.Range("MonthTr").Value
ActiveSheet.PivotTables("PvtMonthTax").PivotCache.Refresh
End With