VBA;无效的过程或参数错误

用户名

一点背景;我必须在前一周的星期一为我的工作运行每周报告,但是我需要合并材料,我做了并制作了数据透视表,并且必须对多个工作表执行此操作。但是,我决定创建一个宏来执行此冗余任务。现在创建它,我似乎收到此错误消息“ Invalid Procedure or Argument”。我无法在新工作表中打开它,这是我的代码>>

Sub weekmaster()
'
' weekmaster Macro
' Macro for the week
'
' Keyboard Shortcut: Ctrl+t
'
    Cells.Select
    Sheets.Add
    ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
        "weekmaster!R1C1:R1048576C62", Version:=xlPivotTableVersion12). _
        CreatePivotTable TableDestination:="Sheet9!R3C1", TableName:="PivotTable1" _
        , DefaultVersion:=xlPivotTableVersion12
    Sheets("Sheet9").Select
    Cells(3, 1).Select
    With ActiveSheet.PivotTables("PivotTable1").PivotFields("Order ID")
        .Orientation = xlRowField
        .Position = 1
    End With
杰卡尔

如果您多次运行该宏,或者Sheet9该宏已经存在(因为该宏试图在同一工作表上创建具有相同名称的相同数据透视表),则会出现错误如果我假设您每次进入数据表并运行宏时都会工作表中生成一个新的数据透视表,则可以使用以下代码更新代码:

Dim myRange as Range
dim myNewSheet as Worksheet

' Stores all continuous data on the sheet in the myRange variable
Set myRange = Range("A1").CurrentRegion

' Adds a new sheet and stores it in the myNewSheet variable
Set myNewSheet = Sheets.Add

' Use the variables to create the new pivot table
ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _
    myRange, Version:=xlPivotTableVersion12).CreatePivotTable _
    TableDestination:=myNewSheet.Cells(3, 1), DefaultVersion _
    :=xlPivotTableVersion12

' Select your Order ID field
With myNewSheet.PivotTables(1).PivotFields("Order ID")
    .Orientation = xlRowField
    .Position = 1
End With

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章