使用书签而不是tbl或qry从书签中访问Word,

问题描述

这是一种全新的访问方式,可能是一种很奇怪的处理方式,但是在这种情况下,我有一个表格,上面有某些经理的信息,例如地址和电子邮件等。我希望能够创建在Word文档的正确位置填充了一封其地址正确的信件,我想我还很遥远,但我遇到了障碍。我不知道如何用表格上的地址填充这个Word文档,我尝试进行查询以显示与表格相同的信息,但它始终返回

“运行时错误3061: 参数太少。预期为1英寸

现在,当我切掉中间人并将一个SQL语句放入open recordset命令中时,同样的事情正在发生。

问题出在第12行(Starting Set rs = dbs.OpenRecordset ...)

感谢您对此有何见识!

Private Sub btnManagerLetter_Click()

    Dim wdApp As Word.Application
    Dim wdDoc As Word.Document
    Dim rs As DAO.Recordset
    Dim dbs As DAO.Database
    Dim address As String

    Set dbs = CurrentDb
    Set wdApp = New Word.Application
    Set wdDoc = wdApp.Documents.Open("\\middle\Data\DataBaseWordDocs&Ding\ding\InsCoLtrTemplate.docx")
    Set rs = dbs.OpenRecordset("SELECT * FROM tblManagers WHERE (((tblManagers.ManagerRef) Like Me![ManagerRef]))",dbOpenSnapshot)
        
    wdApp.Visible = True

    wdDoc.Bookmarks("ManagerName").Range.Text = Nz(rs![Manager Name],"")
    address = Nz(rs![Address Line 1],vbNullString)
    address = Append(address,Nz(rs![Address Line 2],vbNullString))
    address = Append(address,Nz(rs![Town],Nz(rs![County],Nz(rs![Post Code],vbNullString))
    
    wdDoc.Bookmarks("Address").Range.Text = address

End Sub

解决方法

必须串联ActiveMQException.TRANSACTION_ROLLED_BACK。不需要所有这些括号。没有通配符的LIKE也可能是=符号。如果ManagerRef是文本类型字段,则需要定界符。

Me![ManagerRef]

否则,请了解有关使用嵌入式参数的信息:
How do I use parameters in VBA in the different contexts in Microsoft Access?

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...