2017-08-02 40 views
0

即時通訊建立一個按鈕,打開標記爲我的子窗體中的所有點的航點的谷歌地圖。在點擊但是我不斷收到 運行時錯誤'3061':
參數太少。預計1錯誤'3061'爲幾個參數。打開按鈕打開網頁鏈接谷歌地圖waypoints

代碼如下

Private Sub Route_Plan_Click() 
Dim strHyperlink As String 
Dim rs As DAO.Recordset 
Set rs = CurrentDb.OpenRecordset("export_query") 
    strHyperlink = "https://www.google.com/maps/dir/?api=1&origin=','start point address>,+'<start postcode>'" 
If Not (rs.EOF And rs.BOF) Then 
    rs.MoveFirst 
    Do Until rs.EOF = True 
    strHyperlink = strHyperlink & "&waypoints=" & i & "='" & rs!Address & "',+'" & rs!Postcode & "'" 
     rs.MoveNext 
    Loop 
End If 
Application.FollowHyperlink (strHyperlink) 
MsgBox "Finished looping through records." 
rs.Close 
Set rs = Nothing 
End Sub 

的形式將其我的,如果任何人有任何爲什麼我收到此錯誤循環通過創建網絡鏈接的字符串,但很茫然查詢記錄源建議或建議,將不勝感激。

+2

在哪一行,你得到的錯誤?如果它是以「Set rs」開頭的行,那麼您的查詢可能需要您未提供的參數,並且您需要調整查詢或提供所需的參數。 –

+0

是你的rs!地址和rs!PostalCode在excel中收到了嗎? –

+0

你是正確的,它是在SET rs – user681413

回答

0

直接在Access中打開查詢export_query,它會請求丟失數據,您將能夠確定問題出在哪裏。當查詢包含錯誤的列名時,通常會出現參數請求。

+0

它看起來像問題是查詢有窗體控件的參數,雖然窗體打開它失敗的openrecordset – user681413

0

管理,以解決它得益於此線程 VBA OpenRecordset Produces Error 3061

添加到這個它的代碼

Dim prm As DAO.Parameter 
Dim qdf As DAO.QueryDef 

export_query = "Select export_query.address, export_query.postcode from export_query" 
Set qdf = CurrentDb.CreateQueryDef(vbNullString, export_query) 
For Each prm In qdf.Parameters 
    prm.Value = Eval(prm.Name) 
Next 
Set rs = qdf.OpenRecordset