0

我在 Access 中创建参数化查询,并希望从 Word 的 VBA 模块中的 ADO 代码中调用它们。但是,我不确定调用参数化查询的语法。似乎无法在网上找到好的代码参考。

如果我有接受 Firstname 和 Lastname 作为参数的 qryGetRecordByFirstLast,如何从 VBA 模块在 ADO 中执行此代码?

4

1 回答 1

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
于 2009-02-14T21:01:10.117 回答