2009-02-14 3 views
0

Я создаю параметризованные запросы в Access и хотел бы называть их кодом ADO в модуле VBA в Word. Однако я не уверен в синтаксисе для вызова параметризованных запросов. Кажется, не найти хорошую ссылку на код онлайн.Выполнение запросов QueryDefs из VBA в Word

Если у меня есть qryGetRecordByFirstLast, который принимает Firstname и Lastname как parms, как я могу его выполнить в ADO из модуля VBA?

ответ

1

Вот несколько замечаний

'Set up a command object ' 
Set cmd = CreateObject ("ADODB.Command") 
cmd.CommandType = 4 'adCmdStoredProc ' 
cmd.CommandText = "qryGetRecordByFirstLast" 

'adVarWChar = 202' 
'adParamInput=1' 
set par=cmd.CreateParameter ("Firstname",202,1,1,strFirstname) 
cmd.Parameters.Append par 

set par=cmd.CreateParameter ("Lastname",202,1,1,strLastname) 
cmd.Parameters.Append par 

dbfile="C:\Docs\LTD.mdb") 
Set objConn=CreateObject("ADODB.Connection") 

cmd.ActiveConnection = objConn 

Set rs = CreateObject ("ADODB.Recordset") 
rs.Open cmd, , 0, 1 'adOpenForwardOnly, adLockReadOnly' 

blnFound = False 

If Not rs.EOF Then 
    astrRecord = rs.GetRows() 
    intRecFirst = LBound(astrRecord , 2) 
    intRecLast = UBound(astrRecord , 2) 

    blnFound = True 
End If 
Смежные вопросы