Infelizmente, o Excel é exatamente aquele "mal projetado" neste caso. No link a seguir, você pode ver esse comportamento como o comportamento correto:
If the arguments do not describe a visible field, or if they include a report filter in which the filtered data is not displayed, GETPIVOTDATA returns #REF!.
O que você terá que fazer é copiar e colar a tabela dinâmica com qualquer filtro que você tenha em uma nova planilha e fazer referência a isso, se você precisar que o pivot esteja intacto, pode colar a tabela dinâmica sobre ela para destruí-lo e impedir que as pessoas modifiquem os filtros.