首页 > 解决方案 > Excel 2010 VBA 更新连接脚本停止工作

问题描述

我编写了一个 VBA 脚本来将所有数据透视表上的连接更新为工作簿中新的现有连接。这工作得很好,但我再次尝试使用该脚本,我得到一个对象定义或应用程序定义的错误。

脚本

Private Function changeDataSource()
Dim wrkbk As Workbook
Dim sheet As Worksheet
Dim pTable As pivotTable

Set wrkbk = Workbooks(workBookName)

For Each sheet In wrkbk.Worksheets
    Debug.Print "Sheet Name: " & sheet.Name
    For Each pTable In sheet.PivotTables
        Debug.Print "Pivot table: " & pTable.Name
        pTable.ChangeConnection wrkbk.Connections("ConnectionName")
    Next pTable
    Debug.Print "-----------------------------------"
Next sheet
End Function

PS。连接到另一个使用 MS 查询创建的 excel 文件。

另请注意,这是在使用 Windows 7 的 excel 2010 上。

标签: vbaexcel-2010

解决方案


推荐阅读