Date format problem in Mail Merge - Word 2010

Anonymous
2011-05-04T05:45:56+00:00

How do you change the date format in Mail Merge - Word 2010?

In the data file the date is fomated as DD-MMM-YY, yet in the merge document it appears as MMM/D/YY?

Microsoft 365 and Office | Word | For home | Windows

Locked Question. This question was migrated from the Microsoft Support Community. You can vote on whether it's helpful, but you can't add comments or replies or follow the question.

0 comments No comments
Answer accepted by question author
Paul Edstein 82,871 Reputation points Volunteer Moderator
2011-05-04T06:38:39+00:00

Word has a number of different methods of connecting to mail merge data sources, including DDE and OLE DB. Word 2002 and later use the OLE DB coonection by default, though you can change this (to DDE, for example). To work around a limitation in the OLE DB provider used to get data from Excel etc., when Word is connected to an OLE DB data source, it treats dates as if they are in the US mm/dd/yy format, regardless of the format in Excel, your regional settings etc. Applying a date format switch fixes that - and gives the mailmerge document the ability to format the date independently of whatever format is used in the data source.

To get the date format you want, you can add a formatting picture switch as follows:

• select the mergefield;

• press Shift-F9 to expose the field coding. It should look something like {MERGEFIELD MyDate} where 'MyDate' is your mergefield's name;

• delete anything appearing after the mergefield's name and add '@ "dd-MMM-yy"' to the field, as in {MERGEFIELD MyDate @ "d MMMM yyyy"}. With this switch your date will come out as '2 August 2008'. Other possible date formatting switches include:

. @ "dddd, d MMMM yyyy";

. @ "ddd, d MMMM yyyy";

. @ "d MMM yyyy";

. @ "dd/MMM/yyyy".

Note: Note: you can swap the d, M, y expressions around, but you must use uppercase 'M's for months - lowercase 'm's are for minutes.

• position the cursor anywhere in this field and press F9 to update it;

• run your mailmerge.

Was this answer helpful?

700+ people found this answer helpful.
0 comments No comments

78 additional answers

Sort by: Most helpful
  1. Paul Edstein 82,871 Reputation points Volunteer Moderator
    2017-10-17T19:59:08+00:00

    Where is this code change applied, Access or Word. I cannot get the code to show in either application.

    I'd have thought "Applying a date format switch fixes that - and gives the mailmerge document the ability to format the date independently of whatever format is used in the data source" and "select the mergefield" made it fairly obvious which application the change is made in - Word. If you can't get the field codes to show in the mailmerge main document, one would have to wonder whether you've actually added any fields to it yet.

    Was this answer helpful?

    0 comments No comments
  2. Anonymous
    2017-10-17T14:12:43+00:00

    Where is this code change applied, Access or Word. I cannot get the code to show in either application.

    Was this answer helpful?

    0 comments No comments
  3. Paul Edstein 82,871 Reputation points Volunteer Moderator
    2017-09-20T07:01:52+00:00

    If you toggle the field codes ALT+F9

    DOS: «DOS»

    will change to

    DOS: { MERGEFIELD DOS }

    You can then add your required formatting switch before the end bracket e.g.

    DOS: { MERGEFIELD DOS @ "MMMM dd, yyyy" }see http://www.gmayor.com/formatting_word_fields.htm  

    As indicated in Kari's post, though, the problem is that there are two kinds of data in the field - some dates and some text strings comprising date ranges. Adding the formatting switch handles single dates but kills the date spans, whilst omitting it returns the date spans and outputs the single dates as numeric values. Hence my rather involved field code solution.

    Was this answer helpful?

    0 comments No comments
  4. Anonymous
    2017-09-20T05:44:15+00:00

    If you have inserted the merge fields using the tools provided in Word you should have

    DOS: «DOS»

    If you toggle the field codes ALT+F9

    DOS: «DOS»

    will change to

    DOS: { MERGEFIELD DOS }

    You can then add your required formatting switch before the end bracket e.g.

    DOS: { MERGEFIELD DOS @ "MMMM dd, yyyy" }see http://www.gmayor.com/formatting_word_fields.htm

    Was this answer helpful?

    0 comments No comments