View Single Post
  #2   Report Post  
Posted to microsoft.public.word.mailmerge.fields
Doug Robbins - Word MVP Doug Robbins - Word MVP is offline
external usenet poster
 
Posts: 8,832
Default Merge not wking from coding but does from Word doc

Have you tried updating the fields in the new document (Ctrl+A, then F9)

I would apply the condition by designing a Query in the Access database
using an IF() construction that output the required string depending on the
value of the field.

--
Hope this helps.

Please reply to the newsgroup unless you wish to avail yourself of my
services on a paid consulting basis.

Doug Robbins - Word MVP, originally posted via msnews.microsoft.com

"AJ" wrote in message
...
I have a mail merge doc using an access table as the datasource. In the
tbl
for the datasource there are some yes/no fields. In my merge doc, I have
some
if then else set up for these. When I am in the doc and click the merge
all
works fine. But when I run the code in the database my if then else don't
work. It is the same info in the table both times. This is example of my
if
then else in merge doc:
{IF{MERGEFIELD LegalAgeVio} = 0 "____""__X__"}
Basically if the field is no it will put a blank line, else it will mark
the
line with an X.
When I merge from doc, these all are correct, but from the database, it
marks all of the with an X whether the statement is true or false. I have
copied my coding below. Any help would greatly be appreciated. I am at a
loss. I have done many of these and this is the first time this has been
an
issue:

Private Sub cmdWarningLetter_Click()
Dim objWord As Word.Document

DoCmd.SetWarnings False
DoCmd.RunSQL "Delete * From tblWarningLetter"
DoCmd.OpenQuery "qryWarningLetter"

Set objWord = GetObject("G:\Users\AmyC\child
labor\WordDocuments\WarningLetter.doc", "Word.Document")

objWord.Application.Visible = True
objWord.MailMerge.OpenDataSource Name:="G:\Users\AmyC\child
labor\ChildLabor.mdb", LinkToSource:=True, Connection:="DSN=MS Access
Database;DBQ=G:\Users\AmyC\child labor\ChildLabor.mdb;DriverId=25;FIL=MS
Access;MaxBufferSize=2048;PageTimeout=5" ' SQLStatement:="SELECT *
From[tblWarningLetter]"
objWord.MailMerge.Destination = wdSendToNewDocument
objWord.MailMerge.Execute
objWord.ActiveWindow.WindowState = wdWindowStateMaximize
objWord.Close (wdDoNotSaveChanges)
Set objWord = Nothing

DoCmd.SetWarnings True

End Sub