Microsoft KB Archive/211621

= WD2000: Conditional Alphanumeric Merge May Yield Incorrect Results =

Article ID: 211621

Article Last Modified on 12/6/2000

-

APPLIES TO


 * Microsoft Word 2000 Standard Edition

-



This article was previously published under Q211621





SYMPTOMS
A mail merge operation may yield incorrect results if you use a conditional statement to evaluate alphanumeric data when the first character of the data is numeric.



CAUSE
This behavior occurs because conditional statements (IF fields) evaluate only the first two characters of a numeric string.



WORKAROUND
To work around this behavior, modify the data so that each field begins with a non-numeric character, and then modify the conditional field in the main merge document to match the data. To do this, follow these steps:   In the data document, add a character to the beginning of each data field that starts with a number.

You can use any character, such as a parenthesis (you can also add one to the end of the field, so that it's easier to read) or an ampersand (&). This makes the first character in the number field a character instead of a numeral.   Modified with parentheses:

-  |  Rec_Num  |Name      |Number  | -  |     1     |John      |(1AA)   | -  |     2     |Bill      |(1AB)   | -  |     3     |Fred      |(2AA)   | -  |     4     |George    |(ABC)   | -

Modified with an ampersand:

---  |  Rec_Num  |Name      |Number    | ---  |     1     |John      |&1AA      | ---  |     2     |Bill      |&1AB      | ---  |     3     |Fred      |&2AA      | ---  |     4     |George    |&ABC      | ---                    In the main document, edit the test portion of the conditional field so that it matches the newly modified data. For example, if the data is surrounded by parentheses, modify the field to look like this:

{IF {MERGEFIELD number} = "(1A)" "This is true"}

If the data begins with an ampersand, modify the field to look like this:

{IF {MERGEFIELD number} = "&1A" "This is true"}





MORE INFORMATION
As an example, if you use the following sample data file, the following conditional statement incorrectly yields a true result for the first and second records, although only the second record satisfies the condition:

{IF {MERGEFIELD NUMBER} = "1AB" "This is true"}

NOTE: The IF field evaluates only the first two characters (1A) of the numeric string.

Sample Data File
  - | Rec_Num  |Name      |Number  | -  |     1     |John      |1AA     | -  |     2     |Bill      |1AB     | -  |     3     |Fred      |2AA     | -  |     4     |George    |ABC     | -

Additional query words: numbers strings alphabetic

Keywords: kbmerge kbprb kbfield KB211621

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.