【发布时间】:2014-08-29 08:26:14
【问题描述】:
我可以使用以下代码在 excel vba 2010 中成功创建数据透视表,其中数据来自 MS Access 数据库,
Dim con As New ADODB.Connection
Dim rs As New ADODB.Recordset
con.Open "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=H:\SQL.accdb"
rs.Open "SELECT * FROM Table1", con, adOpenStatic, adLockReadOnly
Set piv = ActiveWorkbook.PivotCaches.Create(xlExternal)
Set piv.Recordset = rs
piv.CreatePivotTable TableDestination:=Range("A1"), TableName:="P2"
con.Close
Set rs = Nothing
Set con = Nothing
但是当我更改记录集的 SQL 代码时,无法刷新数据透视表。事实上,必须删除并重新创建数据透视表。有没有办法我可以通过这种方式创建数据透视表并在不删除数据透视表的情况下刷新数据。
【问题讨论】: