用户点击我从ThisWorkbookDataModel创建一个使用DAX查询的表格。代码由宏录制器录制,如下所示:
Range("A9").Select
With ActiveSheet.ListObjects.Add(SourceType:=4, Source:=ActiveWorkbook. _
Connections("Query - Unit___Student_unit_enrolment_d"), Destination:=Range( _
"$A$9")).TableObject
.ListObject.DisplayName = "DAXdetails"
End With
Range("DAXdetails[[#All]]").Select
With Selection.ListObject.TableObject.WorkbookConnection.OLEDBConnection
.CommandText = Array( _
"EVALUATE" & Chr(13) & "" & Chr(10) & "CALCULATETABLE(" & Chr(13) & "" & Chr(10) & " Unit___Student_unit_enrolment_d" & Chr(13) & "" & Chr(10) & " ) ")
.CommandType = xlCmdDAX
End With
ActiveWorkbook.Connections("ModelConnection_ExternalData_1").Refresh
这个动态创建的问题是,如果我在表格DAX查询中已经从ThisWorkbookDataModel提供了任何其他表而不是此行
ActiveWorkbook.Connections("ModelConnection_ExternalData_1").Refresh
刷新其他表。
任何人都可以建议,我如何获得我正在创建的表DAX详细信息的连接名称 - 正确刷新它?
答案 0 :(得分:0)
通过一些手动试验和实验,我找到了通过索引解决该连接的方法:
ActiveWorkbook.Connections(3).Refresh
然而,如果有人知道如何获取为DAX表格查询表提供信息的Connection名称,那么它将获得很多帮助。
谢谢!