从访问运行Word 2010邮件合并而不查询提示

时间:2012-12-21 16:06:19

标签: vba ms-access-2010 mailmerge dde word-2010

我的场景类似于excel VBA to Automatically select Yes when prompted during mail merge中描述的场景,除了我从包含要合并的数据的Access数据库运行VBA,并且(这可能是相关的)Merge正在使用DDE数据连接,因为Query是一个复杂的,并且在ODBC中不可见。我正在尝试从Access运行时应用程序运行Word邮件合并,该应用程序将由不太熟悉计算机的人使用,因此我希望避免将它们与不必要的对话框混淆。事实上,上一个问题的答案对我有用,通过阻止提示允许打开查询,其他所有事情都应该发生,但是当程序到达时,Merge会返回“无数据源”错误。执行线。看来查询提示确实被抑制了,但查询没有打开。

' open the mail merge layout file
objWord.Visible = True ' for now
lngAlerts = objWord.DisplayAlerts
objWord.DisplayAlerts = False
objWord.Documents.Add strInFileName
objWord.DisplayAlerts = lngAlerts

With objWord.ActiveDocument.MailMerge
    .MainDocumentType = 0 ' wdFormLetters
    .Destination = 0 ' wdSendToNewDocument
    .SuppressBlankLines = True
    .Execute Pause:=False
End With

任何人都可以对此有所了解吗?

1 个答案:

答案 0 :(得分:0)

当绕过对话框时,就像用户按下否按钮一样。请参阅Microsoft的KB文章:http://support.microsoft.com/kb/825765

即。您的代码可能需要先发出OpenDataSource调用,除非您可以设置文章中描述的注册表值。