我有相關的詞自動化\郵件合併的問題,查詢字符串命令 和SQL語句在Word 2007中郵件合併,查詢字符串返回不正確的記錄
如果我使用select和預期「=」操作,一切工作。
doc.MailMerge.DataSource.QueryString =
"SELECT * FROM \"TableName\" WHERE \"Id\" = 10";
如果我使用select和 「LIKE」 操作符,它並不:
doc.MailMerge.DataSource.QueryString =
"SELECT * FROM \"TableName\" WHERE \"EmailAddress\" LIKE '%com%'";
貌似字不明白 「LIKE」 操作符,只是跳過它。它返回表中的所有記錄。
有沒有什麼方法可以在查詢字符串中使用「like」?
UPDATE:實際上,MailMerge.Execute與LIKE語句一起工作正常。問題有點不同。系統中有我們顯示RecordCount(doc.MailMerge.DataSource.RecordCount)的地方,它返回不正確的值(它返回表中所有記錄的計數)。因此,如果在QueryString中使用LIKE語句,Word看起來不能確定記錄數。
感謝您的答案,我們從SQL服務器獲取數據,所以我想知道爲什麼它不工作...排序/過濾器對話框有「包含」選項,所以它應該瞭解「喜歡」以及...但事實並非如此。 –
我使用* .odc文件作爲收件人的數據源。 Word 2007 + SQL Server 2008 R2,默認的OLE DB連接和舊的SQLOLEDB.1提供程序。過濾器可以正常工作,如果我手動執行mailmerge,但是如果我從代碼執行,則不起作用... EmailAddress列在表中是varchar(200)。 –
感謝您的建議......我用SQL分析器進行了研究,並且發現了更多有趣的事情,所以我認爲我已經接近解決問題了......實際上,MailMerge.Execute與LIKE語句正常工作。問題有點不同。系統中有我們顯示RecordCount(doc.MailMerge.DataSource.RecordCount)的地方,它返回不正確的值(它返回表中所有記錄的計數)。因此,如果在QueryString中使用LIKE語句,Word看起來不能確定記錄數。 –