How to write {} statments with IF MAILMERGE?

L

lbmmoh

Im a newb here, and trying to write a mailmerge that pulls data from an
excel file.

I have it working, but I get blanks in my letter where the recipient
isnt making that purchase.

for example right now I have lots of items that dont always get filled
because they are blank in my database:

Hello thanks for your order:

{MERGEFIELD "Item1"}
{MERGEFIELD "Item2"}
{MERGEFIELD "Item3"}

Your order will be shipped out ASAP.

If I have a customer with just Item1 purchase, then there is a 2 blank
lines before the "Your order..." line starts. I understand that I need
an IF statment to get rid of the gap but I dont know how to write it. I
see that I have to hit control f9, but when I do that after my current
MERGEFIELD, I get too many of the {} symbols.

My question is simply trying to understand how to use the control F9
and when to do it, so that I have the right amount of symbols.

The code should look like:

{MERGEFIELD "Item1"}{ }{IF {MERGEFIELD "Item1"} <> ""
etc
etc

But again, I cant get the right amount of { } or I get too many. Am i
missing a fundamental way in editing a MERGEFIELD that is already in my
document? Im using Word 2007

Thanks!
 
D

Doug Robbins - Word MVP

While you might get by using mailmerge to do this, you should really
consider using an Access report.

However, the If...then...Else field construction with Mergefields would be

{ Mergefield "Item1" }{ IF { Mergefield "Item2" } <> "" [Enter]
{ Mergefield "Item2" }{ IF { Mergefield "Item3" } <> "" [Enter]
{ Mergefield "Item3" } "" } "" }

Where the [Enter] appears above, you need to press the Enter key at that
point when constructing the field code

--
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
 
L

lbmmoh

Thanks Doug,

I meant to say that my field should say:

{MERGEFIELD "Item1"}{IF {MERGEFIELD "Item1"} <> " " <----those
quotes should have no space, but I noticed that this site deletes it if
I dont put a space there..

What I dont get is that there are 5 brackets, but each time you hit
ctrl+F9 , you get 2 brackets. So I dont undersatnd the procedure in
building the statement itself. I already have a past Word doc that was
used with all the fields, so I think the Access will be my backup plan.
 
G

Graham Mayor

I suspect what Doug meant was

{ Mergefield "Item1" }{ IF { Mergefield "Item2" } <> "" "[Enter]
{ Mergefield "Item2" }" }{ IF{ Mergefield "Item3" } <> "" "[Enter]
{ Mergefield "Item3" }" }

It is easy to lose an odd bracket when typing field structures. :)

The structure is essentially

{ IF{ Mergefield "Item3" } <> "" "[Enter]
{ Mergefield "Item3" }" }

The double quotes for a nul entry are superfluous but you can include them
if you like

{ IF{ Mergefield "Item3" } <> "" "[Enter]
{ Mergefield "Item3" }" "" }

--
<>>< ><<> ><<> <>>< ><<> <>>< <>><<>
Graham Mayor - Word MVP


<>>< ><<> ><<> <>>< ><<> <>>< <>><<>
 
L

lbmmoh

thanks again. I am able to write the same line as you but when I preview
the merge, i still have the blank spaces. THe total still shows in the
same place regardless of how many items are purchased. So situations
"a" and "b" have the same format after the merge, but I want the
spacing gone:

a)
item1
item2

Total $

b)
item1



Total $

Its that gap in situation "b" that im trying to get rid of
 
L

lbmmoh

to follow up, ive ultimately trying to create a 3 column mail merge, and
I thought I could do it with zero border tables, but now that I think
about it, that would still force the structure of the mailmered
document, because the table rows would always be there even if there
was no field in a particular mergefield. Thus creating those gaps that
Im trying to remove. I want the total to get sucked up to the last item
found I attached a picture

[image:
http://images34.fotki.com/v1143/photos/1/162712/584397/mailmerge_example-vi.gif]
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top