无法获取工作表类

时间:2015-11-25 17:53:17

标签: excel vba excel-vba

我正在尝试使用其他人制作的一些VBA,它正在给我一个我似乎无法解决的错误。这是代码:

Sub Format_Homeward_V3()
' Format_Homeward_V3 Macro
    ChDir "J:\Templates"
    Workbooks.Open Filename:= _
        "J:\Templates\Homeward_Exception_Report_Template_Final.xlsx"
    Workbooks.Open Filename:= _
        "J:\Templates\Homeward_Inventory_Report_Template_Final.xlsx"
    Range("A4").Select
    Sheets("Homeward_Summary").PivotTables("MyPivot").PivotCache.Refresh
    Sheets("Detail").Select
    Range("A1").Select

它出错了:

Sheets("Homeward_Summary").PivotTables("MyPivot").PivotCache.Refresh  

并给出错误:

  

"无法获取工作表类"

的pivottables属性

但据我所知,它正在查看正确的工作表和数据透视表的正确名称。我也试过.RefreshTable而不是缓存刷新,但得到了同样的错误。我真的不知道为什么它会给我这个错误而且我不知道还有什么可以尝试。它暂时没有出现此错误。

1 个答案:

答案 0 :(得分:1)

确保所有内容都被引用,然后您无法猜测您正在尝试处理哪个工作簿或工作表(请原谅速记,根据需要进行更改)

Sub Format_Homeward_V3()
Dim wbe As Workbook
Dim wbi As Workbook
Dim ws As Worksheet
Set wbe = Workbooks.Open("J:\Templates\Homeward_Exception_Report_Template_Final.xlsx")
Set wbi = Workbooks.Open("J:\Templates\Homeward_Inventory_Report_Template_Final.xlsx")
Set ws = wbi.Sheets("PIVOT")
ws.Range("A4").Select
ws.PivotTables("MyPivot").PivotCache.Refresh