Excel VBA:如何在数据透视表中将空格显示为0?

问题描述 投票:2回答:1

我正在创建一个宏来创建一个带有计数的数据透视表。我注意到,如果计数为零,则显示为空白。有没有办法以编程方式将其设为0?

这是我的代码:

With Worksheets("Working")

    ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:="'" & rngData.Worksheet.Name & "'!" & rngData.Address(ReferenceStyle:=xlR1C1), _
        Version:=xlPivotTableVersion12).CreatePivotTable TableDestination:=ws.Range("A1"), _
        TableName:="HDPivotTable", DefaultVersion:=xlPivotTableVersion12
End With

ws.PivotTables("HDPivotTable").AddFields RowFields:="Row Label"

ws.PivotTables("HDPivotTable").PivotFields("h,d,x").Orientation = xlDataField

With ws.PivotTables("HDPivotTable").PivotFields("h,d,x")
    .Orientation = xlColumnField
    ws.PivotTables("HDPivotTable").PivotCache.MissingItemsLimit = xlMissingItemsNone
    ws.PivotTables("HDPivotTable").PivotCache.Refresh

    For i = 1 To .PivotItems.Count
        ' Filter out columns that are not "D" or "H"
        If .PivotItems(i) <> "D" And .PivotItems(i) <> "H" Then
            .PivotItems(i).Visible = False
        End If
    Next
End With

谢谢。

excel vba excel-vba
1个回答
3
投票

你应该能够使用PivotTable.NullString

ws.PivotTables("HDPivotTable").NullString = "0"
© www.soinside.com 2019 - 2024. All rights reserved.