2011-01-12 27 views
0

我在Excel 2007中記錄了一個宏,其中創建了一個數據透視表。當我試圖運行宏 時,我得到「無效的過程調用或參數」。Excel 2007 Macro Recorded Pivot Table

我看着調試窗口中的「問題代碼」是: -

ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _ 
"Data!R1C6:R15874C11", Version:=xlPivotTableVersion12).CreatePivotTable _ 
TableDestination:="Table!R1C1", TableName:="PivotTable7", _ 
DefaultVersion:=xlPivotTableVersion12 

如何錄製宏,不要再工作? (我已清除,刪除並重新創建了目標表單和各種類型)以及宏本身有什麼問題?

回答

0

請確保您有:

名爲Data

的片命名錶

命名PivotTable7

+0

我HV檢查那些與仍,這是行不通的。 – Bob 2011-01-12 05:18:05

1

沒有其他的數據透視表的紙張,你是否嘗試破譯密碼往下看更具體問題在哪裏?

例如,

Dim pvc As PivotCache 
Set pvc = ActiveWorkbook.PivotCaches.Create(SourceType:=xlDatabase, SourceData:= _ 
              "Data!R1C6:R15874C11", _ 
              Version:=xlPivotTableVersion12) 
pvc.CreatePivotTable TableDestination:=Worksheets("Table").Range("A1"), _ 
        TableName:="PivotTable7", DefaultVersion:=xlPivotTableVersion12 

而且,也許嘗試

Worksheets("Table").Range("A1") 

,而不是

"Table!R1C1" 

不知道這會令雖然任何區別...

你也是檢查:

下面你沒有一個數據透視表你試圖創建這個?

第1行第6列至第11列中的透視字段名稱有適當的標題?

我知道你說你已經重新板材諸如此類,但總是值得檢查沒有透視表漂浮...嘗試:

Dim pvt As PivotTable 
For Each pvt In Worksheets("Table").PivotTables 
    Debug.Print pvt.Name 
    Debug.Print pvt.TableRange2.Address 
    pvt.ClearTable 
    pvt.TableRange2.Clear 
Next pvt 

其他,我怕我「難倒了。

編輯:

Sub ChangeSourceData() 
    Worksheets("Table").PivotTables("PivotTable7").SourceData = "Data!R1C1:R25C6" 
End Sub 
+0

非常感謝。有用。在重新創建之前,我需要先清理表格。 – Bob 2011-01-13 07:41:57