首页 > 解决方案 > 在 EXCEL VBA 中创建数据透视表

问题描述

我正在尝试使用 VBA 在 Excel 中创建一个数据透视表。这是我的代码:


Dim pc As PivotCache
Dim pt As PivotTable
Dim pf As PivotField
Dim lastrow As Integer

Set pc = ThisWorkbook.PivotCaches.Create( _
    SourceType:=xlDatabase, _
    SourceData:=Worksheets(1).Range("A1").CurrentRegion.Address)

    Worksheets.Add
    Range("A1").Select

Set pt = pc.CreatePivotTable(ActiveCell, "EmptyLocationsPivot")

Set pf = pt.PivotFields("loc")
    pf.Orientation = xlRowField
    
lastrow = Worksheets(1).Range("A" & Rows.Count).End(xlUp).Row
    
ActiveSheet.Range("A2:A" & lastrow - 1).Copy
Worksheets.Add
Range("A1").PasteSpecial xlPasteValues
    

Worksheets(1).Select

lastrow = Worksheets(1).Range("A" & Rows.Count).End(xlUp).Row


If lastrow > 48 Then
    Range("A49:A" & lastrow).Cut
    Range("C1").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
End If

lastrow = Worksheets(1).Range("C" & Rows.Count).End(xlUp).Row

If lastrow > 48 Then
    Range("C49:A" & lastrow).Cut
    Range("D1").Select
    ActiveSheet.Paste
    Application.CutCopyMode = False
End If

MsgBox "Report Is Ready for Print!"

End Sub

我收到以下错误消息:运行时错误“5”:无效的过程调用或参数

从我在线阅读的内容来看,问题在于我引用表格目标的方式。我也尝试过 Worksheets(1).Range("A1") ,但没有成功。

任何帮助,将不胜感激。

标签: excelvbapivot-table

解决方案


推荐阅读