我正在尝试使用vba创建数据透视表。以下是我尝试过的代码:
Sub CreatePivot()
Dim objTable As PivotTable
Dim objField As PivotField
Dim ws As Worksheet
Set ws = Worksheets.Add
Sheets(ws.Name).Name = "Write-Off Pivot"
' Select the sheet and first cell of the table that contains the data.
ActiveWorkbook.Sheets("GEP Write-Offs Rawdata").Select
Range("A1").Select
Set objTable = ws.PivotTableWizard
' Specify row and column fields.
Set objField = objTable.PivotFields("MPG")
objField.Orientation = xlRowField
' Specify a data field with its summary
' function and format.
Set objField = objTable.PivotFields("'A_780610 - Inventory - Obsolescence")
objField.Orientation = xlDataField
objField.Function = xlSum
objField.NumberFormat = "$ #,##0"
End Sub
我收到此错误消息。“运行时错误'104'”“对象'_worksheet'的方法'数据透视表'失败”
问题似乎出在这条线上,但无法弄清楚是什么原因造成的。
Set objTable = ws.PivotTableWizard
您的下一行需要更改。
Set objTable = ws.PivotTableWizard
这应该指向数据源表。应该是这样。
Set objTable = Sheets("GEP Write-Offs Rawdata").PivotTableWizard
自从您执行命令以来,它将创建数据透视表并写入新添加的工作表中
Set ws = Worksheets.Add
Sheets(ws.Name).Name = "Write-Off Pivot"
未链接到它。请对其进行适当的修改。
这是@Rory建议的内容。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句