2
我想連接具有以下查詢的數據庫的excel。將Excel連接到Access
SELECT * FROM Products WHERE Order = [Enter Order]
但excel似乎無法找到此查詢。它只顯示不使用參數的實際表格和其他查詢。
有沒有辦法在使用參數的查詢上連接excel?我正在使用MS-Excel 2007.
我想連接具有以下查詢的數據庫的excel。將Excel連接到Access
SELECT * FROM Products WHERE Order = [Enter Order]
但excel似乎無法找到此查詢。它只顯示不使用參數的實際表格和其他查詢。
有沒有辦法在使用參數的查詢上連接excel?我正在使用MS-Excel 2007.
一些注意事項。
「參數查詢必須在Microsoft Query中創建」。
Customize a parameter query
Use Microsoft Query to retrieve external data
ADODB & VBA
''Ref: Microsoft ActiveX Data Objects x.x Library
Dim cmd As New ADODB.Command
Dim conn As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim prm As ADODB.Parameter
Dim strConn As String
strConn = "Provider = Microsoft.ACE.OLEDB.12.0;" _
& "Data Source=z:\docs\test.accdb"
conn.Open strConn
cmd.ActiveConnection = conn
cmd.CommandText = "Query4"
cmd.CommandType = adCmdStoredProc
Set prm = cmd.CreateParameter("EnterText", adVarWChar, adParamInput, 50)
cmd.Parameters.Append prm
cmd.Parameters("EnterText").Value = ActiveWorkbook.Sheets("Sheet5").[A2]
'Execute the Stored Procedure
Set rs = cmd.Execute
ActiveWorkbook.Sheets("Sheet8").Cells(2, 1).CopyFromRecordset rs
'Close the connection
conn.Close
「參數查詢必須在Microsoft Query創建。」 http://office.microsoft.com/en-us/excel-help/customize-a-parameter-query-HP005199548.aspx AND http://office.microsoft.com/en-us/excel-help/use-微軟查詢 - 回收 - 外部數據HA010099664.aspx。如果這不合適,你願意使用多少VBA? – Fionnuala
如果這不合適,您願意使用多少VBA? - 只要它有效。 –
你的建議奏效。只有一個問題,我使用的數據庫是具有用戶級安全性的Access 2003數據庫。它需要一個工作組文件來打開數據庫,但似乎無法使它在Microsoft Query上工作。 –