Excel VBA 添加 table 到 Pivot Table 数据模型
Excel VBA adding table to Pivot Table Data model
美好的一天,
我正在尝试从 table 中插入一个数据透视表 table,但也会通过 VBA 将其添加到数据模型中。
我已经手动记录了这个过程并且也按照这个link的例子:https://powerpivotpro.com/2014/07/adding-tables-to-a-model-from-vba-in-excel-2013/
我更改了之前在代码中设置的数据路径和工作簿名称的变量。当我 运行 宏时,第一行出现以下错误:"运行-Time error 5: Invalid procedure call or argument".
我以前从未通过 VBA 向数据模型添加过枢纽 table,因此不确定代码应该是什么样子(除了我在网上看到的和我的似乎符合例如)
MainWB.Connections.Add2 "WorksheetConnection_" & MainWB.Name & "!Table_SDCdata", "", _
"WORKSHEET;" & DataPath & "\" & MainWB.Name & ", " & MainWB.Name & "!Table_SDCdata", 7, True, False
MainWB.PivotCaches.Create(SourceType:=xlExternal, SourceData:=MainWB.Connections("WorksheetConnection_" & MainWB.Name & "!Table_SDCdata" _
), Version:=6).CreatePivotTable TableDestination:=wsPivotModel.Name & "!R1C1", TableName:="PvtSDCmodel", DefaultVersion:=6
变量如下:(本题为了安全添加**替换,两个变量都正确,代码中多次使用都没有问题)
MainWB.name: **2791 SDC 内陆 12.08.2020.xlsbCOMBINED.xls
DataPath: C:_Store\Simone_d_drive\Desktop*19\Macros*\原始数据**9120.08.16
任何帮助或指出正确的方向都将非常感谢!
我设法找到了我的错误:
更新代码:
MainWB.Connections.Add2 "WorksheetConnection_" & MainWB.Name & "!Table_SDCdata", "", _
"WORKSHEET;" & DataPath & "\" & MainWB.Name, MainWB.Name & "!Table_SDCdata", 7, True, False
我不得不删除 2 个引号,一个在连接字符串的末尾,第二个在命令文本的开头。
美好的一天,
我正在尝试从 table 中插入一个数据透视表 table,但也会通过 VBA 将其添加到数据模型中。 我已经手动记录了这个过程并且也按照这个link的例子:https://powerpivotpro.com/2014/07/adding-tables-to-a-model-from-vba-in-excel-2013/
我更改了之前在代码中设置的数据路径和工作簿名称的变量。当我 运行 宏时,第一行出现以下错误:"运行-Time error 5: Invalid procedure call or argument".
我以前从未通过 VBA 向数据模型添加过枢纽 table,因此不确定代码应该是什么样子(除了我在网上看到的和我的似乎符合例如)
MainWB.Connections.Add2 "WorksheetConnection_" & MainWB.Name & "!Table_SDCdata", "", _
"WORKSHEET;" & DataPath & "\" & MainWB.Name & ", " & MainWB.Name & "!Table_SDCdata", 7, True, False
MainWB.PivotCaches.Create(SourceType:=xlExternal, SourceData:=MainWB.Connections("WorksheetConnection_" & MainWB.Name & "!Table_SDCdata" _
), Version:=6).CreatePivotTable TableDestination:=wsPivotModel.Name & "!R1C1", TableName:="PvtSDCmodel", DefaultVersion:=6
变量如下:(本题为了安全添加**替换,两个变量都正确,代码中多次使用都没有问题)
MainWB.name: **2791 SDC 内陆 12.08.2020.xlsbCOMBINED.xls
DataPath: C:_Store\Simone_d_drive\Desktop*19\Macros*\原始数据**9120.08.16
任何帮助或指出正确的方向都将非常感谢!
我设法找到了我的错误:
更新代码:
MainWB.Connections.Add2 "WorksheetConnection_" & MainWB.Name & "!Table_SDCdata", "", _
"WORKSHEET;" & DataPath & "\" & MainWB.Name, MainWB.Name & "!Table_SDCdata", 7, True, False
我不得不删除 2 个引号,一个在连接字符串的末尾,第二个在命令文本的开头。