将dynamic数据透视表设置为打印区域

我已经尝试通过一个命名的范围,但是由于某种原因,我运行一个macros后,方程在命名的范围内不断变化。 所以我试图在macros本身内设置范围。 我正在编写一个macros,它将通过切片机来查看并将2张纸保存为PDF。 第二个选项卡有每个切片机更改时区域范围将会更改的枢轴。 有人可以帮助我这样,这将打印到PDFdynamic?

Sub Loopexport() Dim ws2 As Worksheet Dim PT As PivotTable 'Hide non-printable sheets Sheets("Overview").Visible = False Sheets("KPExport").Visible = False Set ws2 = Sheets("Id CUps") Set PT = ws2.PivotTables(1) 'Set print areas Sheets("Stats").PageSetup.PrintArea = "$A$1:$M$39" ws2.PageSetup.PrintArea = PT.TableRange2 'this is where I am receiving the type mismatch. and the = "My named range" kept changing automatically at the end. With Sheets("Id CUps").Columns("D:D") .HorizontalAlignment = xlGeneral .VerticalAlignment = xlBottom .WrapText = True .Orientation = 0 .AddIndent = False .IndentLevel = 0 .ShrinkToFit = False .ReadingOrder = xlContext .MergeCells = False End With 'Print Regions 'Export N1 ActiveWorkbook.SlicerCaches("Slicer_Dt").VisibleSlicerItemsList = Array("[UserID].[Dept].&[N1]") ChDir ("C:\My Docs\A\B\Export") ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\My Docs\A\B\Export\N1 - " & Format(Now(), "YYYY") & "M" & Format(Now(), "MM") End Sub 

 ws2.PageSetup.PrintArea = PT.TableRange2.Address