我正在创建一个宏,我从数据库中获取一些数据,然后创建该数据的数据透视。但是在执行此操作时,我收到了一些 1004 错误和一些评论。这是我的代码
Sub CreatePivot()
Dim objTable As PivotTable, objField As PivotField
ActiveWorkbook.Sheets("data").Select
' data is name of the sheet
Range("A1").Select
**Set objTable = Sheet1.PivotTableWizard**
Set objField = objTable.PivotFields("name")
objField.Orientation = xlRowField
Set objField = objTable.PivotFields("location")
objField.Orientation = xlRawField
Set objField = objTable.PivotFields("blaa")
objField.Orientation = xlRowField
' Specify a data field with its summary
' function and format.
Set objField = objTable.PivotFields("money")
objField.Orientation = xlDataField
objField.Function = xlSum
objField.NumberFormat = " #,##0"
' Specify a page field.
'Set objField = objTable.PivotFields("GENDER")
'objField.Orientation = xlPageField
' Preview the new PivotTable report.
ActiveSheet.PrintPreview
' Prompt the user whether to delete the PivotTable.
Application.DisplayAlerts = False
If MsgBox("Delete the PivotTable?", vbYesNo) = vbYes Then
ActiveSheet.Delete
End If
Application.DisplayAlerts = True
End Sub
错误是说我收到此运行时错误“1004”:-此命令至少需要两行源数据。您不能对仅一行中的选择使用该命令。请尝试以下操作:如果您使用的是高级筛选器,请选择包含至少两行数据的单元格区域。然后再次单击高级过滤器命令。如果您正在创建数据透视表或数据透视图报告,请键入 [它在此处停止]
这是我的代码卡住了Set objTable = Sheet1.PivotTableWizard
当我通过获取新数据使用相同的代码时,它就可以工作了。在这里,我使用 btn_click 从 db 获取数据,后面有两个宏。一个宏获取数据,然后在 creat pivot 上使用第二个宏。但问题来了。有人可以帮忙吗?