我有一个数据透视表,它与工作簿中的查询有连接作为数据源。我正在尝试编写VBA代码,用于更改数据透视表中的值,不进行任何计算,以显示与之不同的值。
Sub mySub()
Dim thisyear
thisyear = "2010"
Sheet1.Activate
Range("A6").Select 'this selects all of the data in the pivot table
With ActiveSheet.PivotTables("PivotTable1").PivotFields( _
"[Measures].[Sum of Income]")
.Calculation = xlDifferenceFrom
.BaseField = "[AllTabs].[year].[year]"
.BaseItem = thisyear
End With
End Sub
由于数据源来自数据模型中的查询,因此我必须在[收入总和]之前添加[Measures]并在基本字段中将[year]置于两次由于某种原因。基本项不接受变量(如果您在excel中选择它的值,则其值是其中一个选项)甚至是字符串。我是否因为数据透视表的数据源而遇到这些问题?