Mergefield nested if problem

M

Matthew Loraditch

All,
I am working on a mergefield that displays a picture based on a merged
field's value.
The original i got had nested ifs and I am told it can go up to 10. I tried
to add 1 and it does not work (I added "test1")
What am I doing wrong? I think i must be missing an extra " or }, but am not
sure, if you are willing I can email or post the files somewhere for you to
take a look at
Thanks!!
Matthew Loraditch
 
D

Doug Robbins - Word MVP

Show us the field construction that you are using.

To make it easy to get it into a post, see the following page of fellow MVP
Graham Mayor's website:

http://www.gmayor.com/export_field.htm

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

Matthew Loraditch

Original:
{ IF { MERGEFIELD SLSP1 \* MERGEFORMAT } = "allison" "pictures1" { IF {
MERGEFIELD SLSP1 \* MERGEFORMAT } = "mark" "picture2" { IF { MERGEFIELD
SLSP1 \* MERGEFORMAT } = "william" "picture3" ""} } }

My Version:
{ IF { MERGEFIELD SLSP1 \* MERGEFORMAT } = "allison" "pictures1" { IF {
MERGEFIELD SLSP1 \* MERGEFORMAT } = "mark" "picture2" { IF { MERGEFIELD
SLSP1 \* MERGEFORMAT } = "william" "picture3" { IF { MERGEFIELD SLSP1 \*
MERGEFORMAT } = "william2" "picture4" ""} } } }

picturex is an image in the actual doc, up to william and picture 3 is the
original code, the william2 is my addition that doesn't work right, i need
up to 12 ifs for different people

Thanks for the help!
-matthew
 
D

Doug Robbins - Word MVP

I would not try and do it that way. You should add a field to the data
source that contains the filename of the picture that you want to include
for each record.

See the "Graphics from data base" item under the "Special merges" section of
fellow MVP Cindy Meister's website at

http://homepage.swissonline.ch/cindymeister/MergFram.htm


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

Graham Mayor

I agree with Doug. The simplest way to do this would be to rename your
pictures (or copy your pictures and name them) to match the names of your
characters eg allison.jpg mark.jpg etc. Then you don't need a conditional
field of any kind. Use instead

{INCLUDEPICTURE "C:\\Path\\{MERGEFIELD SLSP}.jpg"}

The mergefield switches are in any case superfluous (and would be better
replaced by a lower case switch to ensure that the condition always matches
the data.

Had you wanted to retain the original names, there is no need to nest the
fields. Use a series of fields on the same line eg

{IF { MERGEFIELD SLSP1 \*Lower} = "allison" "{INCLUDEPICTURE
"c:\\path\\picture1.jpg"}"}{IF { MERGEFIELD SLSP1 \*Lower} = "mark"
"{INCLUDEPICTURE "c:\\path\\picture2.jpg"}"}{IF { MERGEFIELD SLSP1 \*Lower}
= "william" "{INCLUDEPICTURE "c:\\path\\picture3.jpg"}"}{IF { MERGEFIELD
SLSP1 \*Lower} = "william2" "{INCLUDEPICTURE "c:\\path\\picture4.jpg"}"}

See http://www.gmayor.com/mail_merge_graphics.htm

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


<>>< ><<> ><<> <>>< ><<> <>>< <>><<>
 
M

matthew loraditch

Doug,
Is there a way to see what path the merge is constructing? I am getting red
x images, and I want to see what I am doing wrong.
Thanks!
 
G

Graham Mayor

Alt F9 will show the field construction. You need to merge to a new
document, select all (CTL+A) then F9 to update the fields.

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


<>>< ><<> ><<> <>>< ><<> <>>< <>><<>
 

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