数据透视表错误|调用或过程无效 [英] Pivot Table Error | Invalid Call or Procedure

查看:0
本文介绍了数据透视表错误|调用或过程无效的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在这件事上需要一些帮助。我正在尝试从第一季度开始创建一个透视表,其中包含同一工作表中的一系列数据。第一个if语句在那里,因为最后一列并不总是包含标头,所以我将其包含在其中。

我希望范围是动态的,因为要创建的表的大小将根据表中数据的行数而变化。源数据始终为A1:o&;lastRow,并且表始终需要放置在同一工作表的第一季度。

我收到下面的错误-无效调用或过程-屏幕截图。

调试时的问题行是我设置透视表的地方-也在下面的屏幕截图中。

如果有帮助,我将在启动文件夹中的单独工作表中运行此代码。

如有任何帮助,我们将不胜感激!

更新为使用注释建议显示当前代码

Sub aaTemp()
'
' aaTemp Macro
'

If Range("O1").Value = "" Then
    Range("O1").Value = "Notes"
    Else
    End If

Dim lastRow, lastColumn As Long
    lastRow = ActiveSheet.Range("B65536").End(xlUp).row
    lastColumn = 15

'Dim pivotSource As String
    'pivotSource = "'" & ActiveSheet.Name & "'!" & Range("A1:O" & lastRow).Address(ReferenceStyle:=xlR1C1)

'Dim pivotDestination As String
    'pivotDestination = "'" & ActiveSheet.Name & "'!" & Range("Q1").Address(ReferenceStyle:=xlR1C1)

Dim ws As Worksheet
Dim wb As Workbook
Dim pc As PivotCache
Dim pt As PivotTable

Set ws = ActiveSheet
Set wb = ThisWorkbook

Set pc = wb.PivotCaches.Create(SourceType:=xlDatabase, _
    sourceData:=ActiveSheet.Range("A1:O" & lastRow), _
    Version:=xlPivotTableVersion15)

Columns("Q:Z").delete Shift:=xlToLeft

Set pt = ws.PivotTables.Add(PivotCache:=pc, _
    TableDestination:=ActiveSheet.Range("Q1"), _
    TableName:="PTPivotTable")

End Sub

推荐答案

Sub aaTemp()
'
' aaTemp Macro
'

If Range("O1").Value = "" Then
    Range("O1").Value = "Notes"
    Else
    End If

Dim lastRow, lastColumn As Long
    lastRow = ActiveSheet.Range("B65536").End(xlUp).row
    lastColumn = 15

Dim ws As Worksheet
Dim wb As Workbook
Dim pc As PivotCache
Dim pt As PivotTable

Set ws = ActiveSheet
Set wb = ActiveWorkbook   'This was the needed change

Set pc = wb.PivotCaches.Create(SourceType:=xlDatabase, _
    sourceData:=ActiveSheet.Range("A1:O" & lastRow), _
    Version:=xlPivotTableVersion15)

Columns("Q:Z").delete Shift:=xlToLeft

Set pt = ws.PivotTables.Add(PivotCache:=pc, _
    TableDestination:=ActiveSheet.Range("Q1"), _
    TableName:="PTPivotTable")

End Sub

这篇关于数据透视表错误|调用或过程无效的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆