[英]How to copy a powerpivot table down to an excel sheet with vba?
我需要將表在powerpivot模型中放到Excel工作表中。
到目前為止,我已經嘗試過使用Recordset,但是無法獲得PowerPivot表的ActiveConnection。 可能嗎? 還是有其他更好的方法可以做到這一點?
我使用以下代碼:
Dim name As ADODB.Recordset
Set name = New ADODB.Recordset
With name
.ActiveConnection = ConnectionName
.Source = "TableName"
.LockType = adLockReadOnly
.CursorType = adOpenForwardOnly
.Open
End With
但是,通過這段代碼,我在.ActiveConnection處遇到錯誤。 (運行時錯誤3001,它抱怨不允許的連接間隔)
這是一個如何從命名范圍讀取記錄的示例(假設'TableData'被命名為range)。
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset
With cn
.Provider = "Microsoft.ACE.OLEDB.12.0"
.ConnectionString = "Data Source=" & ThisWorkbook.FullName & ";" & _
"Extended Properties=Excel 8.0;"
.Open
End With
rs.Open "SELECT * FROM [TableName]", cn
Dim r
For Each r In rs.GetRows
'Do whatever you want per record
Debug.Print r
Next r
rs.Close
cn.Close
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.