Excel VBA – 使用variables来设置数据透视表数据字段function
我试图创build使用VBA创build数据透视表的自定义报告,我遇到麻烦的一个部分是将数据字段设置为基于他的用户的需求。
例如:我有一个下拉菜单,显示每种types的PivotFields函数(sum,min max等),并根据用户select的内容将其存储为stringvariables。
当我运行我的代码时:
Dim valueXL As String valueXL = xlSum With Worksheets(sheetPivotName).PivotTables(sheetPivotName).PivotFields(valueType) .Function = valueXL .NumberFormat = "$#,##0.00" End With
我得到一个错误,但是,如果我replace.Function = valueXL与.Function = xlSum它工作正常。
有什么办法可以dynamic设置.Function的值吗?
谢谢
由于xlSum是一个数字的Excel常量,您应该将valueXL更改为整数
Dim valueXL As Integer valueXL = xlSum
或者在代码中直接使用常量
With Worksheets(sheetPivotName).PivotTables(sheetPivotName).PivotFields(valueType) .Function = xlSum .NumberFormat = "$#,##0.00" End With
我发现了一个可能的解决scheme,它使用了Evaluate函数,但是我想知道是否还有其他解决scheme?
如果没有,我可以select这个答案。