【发布时间】:2016-04-19 12:10:39
【问题描述】:
这个很奇怪
我有一个通过 power pivot / OLAP 连接到数据源的数据透视表。 我创建了一个 vba 按钮来向数据透视的行部分添加一个字段但是当我运行时...
With ActiveSheet.PivotTables("PivotTable1")
.AddDataField ActiveSheet.PivotTables( _
"PivotTable1").CubeFields("[Measures].[Sum of Unique_Customers]"), "Unique Customers"
End With
我收到对象错误 1004 运行时错误 1004 应用程序定义或对象定义错误。
但是,如果我刷新数据透视/数据连接,则它可以正常工作。我已经制定了一种解决方法,以在每次打开工作簿时刷新枢轴,但我担心随着数据的增长,这将变得资源繁重。有谁知道错误发生的解决方案或原因?在刷新数据之前,vb 似乎无法识别该字段。有关信息,该字段是原始字段,而不是 MDX calc 或任何东西
非常感谢!
【问题讨论】:
-
我会不惜一切代价避免使用“ActiveSheet”。这可能会导致数据透视表出现范围问题。另外,您是否验证了数据透视表的名称?
-
非常感谢 - 我希望在我的代码中替换“ActiveSheet”。您的意思是给数据透视表一个正确的名称而不是“数据透视表!”?我也会试试这个:)
-
我厌倦了删除活动工作表并重命名我的枢轴,但我仍然收到错误:( Sheets("Summary").PivotTables("StatsSummary")
标签: excel olap powerpivot vba