Share via

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
  1. Paul Edstein 82,861 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.

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

78 additional answers

Sort by: Most helpful
  1. Anonymous
    2012-04-27T18:42:00+00:00

    You are probably encountering a different problem from the original post. In your case, what is more likely is that you have mixed data types in the first 8 cells in your Excel date column, in which case the OLE DB provider may decide that the column is numeric, rather than date, and will return Excel's underlying date number (a day count from a fixed date).

    If you control your data source, it's probably worth checking each of those 8 cells and seeing what is actually in them (and I have also seen some evidence that if the cell contains a formula that results in a date, that may affect the outcome).

    Connecting via DDE would typically solve that problem but suffers from other limitations. Copy/paste into Word document and using that as a data source can also solve certain problems. But the fact is that none of the builtin methods that Word has to connect to Excel data solves all the problems we frequently encounter in this group.

    20+ people found this answer helpful.
    0 comments No comments
  2. Anonymous
    2012-04-27T17:05:34+00:00

    I have tried this many times, still cannot get date to display properly from Excel merge into Word (2010).  Date still displays as 41179 for example in merged doc.  Using switch for currency works great, but the date switch is not formatting the field.  Here is my syntax:

    {MERGEFIELD First_Arr_Date @ "MMMM dd, yyyy"}


    This is driving me crazy.  Help!

    Mark

    10+ people found this answer helpful.
    0 comments No comments
  3. Anonymous
    2016-05-24T06:32:04+00:00

    You will get the numbers only format if the Excel sheet is open at the time you do the MailMerge. Close Word and the Excel sheet, reopen Word and rerun the MailMerge.

    5 people found this answer helpful.
    0 comments No comments
  4. Anonymous
    2011-05-04T06:52:23+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.

    Thanks very much, problem sorted...

    5 people found this answer helpful.
    0 comments No comments