簡體   English   中英

Excel VBA添加數據透視表中的值字段不起作用

[英]Excel VBA adding Values field in Pivot Table not working

嗨,我想在我的數據透視表中添加一個值字段。 這是我現在的代碼:

 'Insert Row Fields
   With ActiveSheet.PivotTables("PivotTable").PivotFields("Account Lvl1 Desc")
   .Orientation = xlRowField
   .Position = 1
   End With
   With ActiveSheet.PivotTables("PivotTable").PivotFields("Account Description")
   .Orientation = xlRowField
   .Position = 2
   End With
   With ActiveSheet.PivotTables("PivotTable").PivotFields("Supplier")
   .Orientation = xlRowField
   .Position = 3
   End With

 'Insert Data Field
   With ActiveSheet.PivotTables("PivotTable")

   .PivotFields ("Distrib Amt CAD")
   .Orientation = xlDataField
   .Function = xlSum
   '.NumberFormat = "#,##0"
   .Name = "Sum of OH in CAD "
   End With

其他一切都在運作,但價值觀

我會建議一些清理:

With ActiveSheet.PivotTables("PivotTable")
   'Insert Row Fields
   With .PivotFields("Account Lvl1 Desc")
       .Orientation = xlRowField
       .Position = 1
   End With
   With .PivotFields("Account Description")
       .Orientation = xlRowField
       .Position = 2
   End With
   With .PivotFields("Supplier")
       .Orientation = xlRowField
       .Position = 3
   End With
   'Insert Data Field 
   With .PivotFields ("Distrib Amt CAD")
       .Orientation = xlDataField
       .Function = xlSum
       '.NumberFormat = "#,##0"
       .Name = "Sum of OH in CAD "
   End With
End With

如果您具有從SharePoint字段表導出的值,那么這些是字符串...在數據上運行與下面類似的代碼,以便您可以顯示為數字:

With sws 'source worksheet
    lr = .Cells(.Rows.Count, 1).End(xlUp).Row
    For i = 2 To lr
        .Cells(i, 6).Value = Val(.Cells(i, 6).Value) * 1 'Uses column 6 (F)
    Next i
End With

一旦存在適當的數據,它將在輸出上給出超過#Value的錯誤。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM