我使用MS Excel 2016使用很多字段构建一些数据透视表。
当我选择一个新字段时,它将作为“计数”而不是“总和” - 所以我必须手动更改它并且有很多字段。
我的输入源有很多NULLS / BLANKS - 我相信这就是为什么这些新字段最初显示为“count”的原因。现在,我将所有输入值从NULL / BLANK更改为0(零),因此默认选项更改为“sum”。
但我想知道是否还有其他方法?
你可以查看这个链接,但这里是代码(未测试)
Public Sub AddPivotDataToSumFields()
' Cycles through all pivot data fields and sets to sum
' Created by David Sellnow
' Version 1.0 November 11 2016
Dim pf As PivotField
Dim FieldName As Variant
Dim TableName As String
Dim Table As Object
With Selection.PivotTable
TableName = .Name
.ManualUpdate = True
For Each pf In .DataFields
With pf
FieldName = Mid(.Caption, 8)
ActiveSheet.PivotTables(TableName).AddDataField ActiveSheet.PivotTables( _
TableName).PivotFields(FieldName), "Max Of " & FieldName, xlMax
ActiveSheet.PivotTables(TableName).AddDataField ActiveSheet.PivotTables( _
TableName).PivotFields(FieldName), "Min Of " & FieldName, xlMin
ActiveSheet.PivotTables(TableName).AddDataField ActiveSheet.PivotTables( _
TableName).PivotFields(FieldName), "StdDev Of " & FieldName, xlStDev
ActiveSheet.PivotTables(TableName).AddDataField ActiveSheet.PivotTables( _
TableName).PivotFields(FieldName), "Var Of " & FieldName, xlVar
End With
Next pf
.ManualUpdate = False
End With
End Sub
http://excelpivots.com/excel/change-multiple-pivot-table-fields-sum-function/